1
0
mirror of https://github.com/tearshark/librf.git synced 2024-10-01 15:57:07 +08:00
基于C++ Coroutines提案 ‘Stackless Resumable Functions’编写的协程库
Go to file
2020-02-18 13:23:05 +08:00
benchmark 恢复新版本下的mutex功能,并完成相关范例 2020-02-16 12:49:58 +08:00
doc create repository 2017-09-24 14:01:30 +08:00
librf 兼容clang 2020-02-18 13:23:05 +08:00
tutorial 将state和协程所用的内存分配到一起。 2020-02-18 13:15:16 +08:00
vs_proj 将state和协程所用的内存分配到一起。 2020-02-18 13:15:16 +08:00
.gitignore 优化Modern Callback范例,使得modern_callback_adapter_t更加通用并简化使用 2019-04-25 16:07:37 +08:00
LICENSE create repository 2017-09-24 14:01:30 +08:00
README.md 兼容clang 8.0版本 2020-02-16 15:06:09 +08:00

librf 2.0

librf - 协程库

2020-02-16 更新:

更新调度器算法深入应用Coroutines的特性以期获得更高调度性能。
不再支持C++14。

librf是一个基于C++ Coroutines提案 Stackless Resumable Functions编写的非对称stackless协程库。

目前仅支持:

Windows (使用VS2017/VS2019编译)

librf有以下特点

  • 1.基于C++17提案'Stackless Resumable Functions'编写的非对称stackless协程库可以以同步的方式编写简单的代码同时获得异步的性能

  • 2.理论上支持海量协程, 创建100万个协程只需使用<430M>物理内存

  • 3.提供协程锁(mutex), 定时器, channel等特性, 帮助用户更加容易地编写程序

  • 4.可以很好的跟asio,libuv等库结合能跟现有的callback范式的异步/延迟代码很好的结合

  • 5.目前还处于实验状态不对今后正式的C++ Coroutines支持有任何正式的承诺

  • 如果你发现了任何bug、有好的建议、或使用上有不明之处可以提交到issue也可以直接联系作者: email: tearshark@163.net QQ交流群: 296561497

  • doc目录下有作者搜集的一些关于C++协程的资料

  • tutorial目录下有针对每个特性的范例代码让用户可以循序渐进的了解librf库的特性