百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
M

minicoro

> 编程语言
开源

纯 C 编写的单头堆栈跨平台协程库。

967 stars0 点赞2 次浏览
访问官网GitHub

工具介绍

纯 C 编写的单头堆栈跨平台协程库。

minicoro

Minicoro 是一个单文件库,用于在 C 中使用非对称协程。 该 API 受 Lua 协程 的启发,但考虑到了 C 语言的使用。 该项目主要是为了开发一个协程后端 用于 Nelua 编程语言。 库组件实现灵感来自 Mike Pall 的 Lua Coco。

特性

  • 多层异步协程。
  • 支持协程嵌套(从另一个协程恢复)。
  • 支持自定义分配器。
  • 存储系统,允许在 yield 和 resume 之间传递值。
  • 可自定义堆栈大小。
  • 支持可扩展堆栈,在启用虚拟内存分配器时占用内存小。
  • 协程 API 设计灵感来自 Lua,考虑到 C 语言的使用情况。
  • 可在任何 C 函数中执行 yield。
  • 可在多线程应用程序中使用。
  • 跨平台。
  • 简洁、自包含且无外部依赖。
  • 源代码可读,有文档说明。
  • 通过汇编、ucontext 或 fiber 实现。
  • 体积小、效率高。
  • 可在大多数 C89 编译器中使用。
  • API 容易出错,在误用时返回正确的错误代码。
  • 支持在 Valgrind、ASan (AddressSanitizer) 和 TSan (ThreadSanitizer) 下运行。

支持的平台

如果编译器和 CPU 支持,则默认使用汇编方法;否则,将使用 ucontext 或 fiber 方法作为回退方案。汇编方法非常高效,仅需几个周期即可创建、恢复、暂停或销毁一个协程。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Cassemblyasymmetric-coroutinesccoroutine

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言