1
0
mirror of https://github.com/tearshark/librf.git synced 2024-10-02 00:00:11 +08:00
Commit Graph

70 Commits

Author SHA1 Message Date
tearshark
2d0a597b85 整理类型萃取代码
when_all/when_any接受functor。functor必须得返回一个awaitor
2020-03-12 23:03:04 +08:00
tearshark
aba74aaa19 重新实现when_all/when_any 2020-03-12 16:56:23 +08:00
tearshark
c863f50ff1 获得当前协程帮定的调度器 2020-03-11 22:30:42 +08:00
tearshark
1b344cc651 event支持超时 2020-03-10 22:34:50 +08:00
tearshark
a5459300b9 新版本的event实现 2020-03-10 21:31:05 +08:00
tearshark
1d2d17a2bb 提高协程切换测试4ns. 2020-03-09 18:13:10 +08:00
tearshark
da9c2fa75f 更新一些测试方案 2020-03-09 17:59:07 +08:00
tearshark
50841a1d2f 增加一种新的测试channel的方法 2020-03-09 17:36:36 +08:00
tearshark
a14fd0d640 channel为多线程优化提供手段 2020-03-09 16:45:04 +08:00
tearshark
d4a95348b2 优化channel的缓存数据的方式 2020-03-09 15:31:30 +08:00
tearshark
d854bd00f6 重写channel的实现方法 2020-03-09 14:23:35 +08:00
tearshark
ac11ce9f6f 优化channel实现,使用循环队列完成channel数据缓存 2020-03-09 08:17:52 +08:00
tearshark
f33d4c471a 企图实现一个更加简洁和lock-free的event。 2020-03-04 11:23:10 +08:00
tearshark
837a2827ba 将异常和返回值做成union以减小state的大小。
支持返回引用。
2020-03-02 23:39:09 +08:00
tearshark
fee671711d 减少state加锁的次数
增加future对yield的测试
2020-03-02 14:50:01 +08:00
tearshark
4061c32f3f clang通过除asio外的所有测试 2020-03-01 13:17:04 +08:00
tearshark
0739e99ab2 全面兼容clang编译器,并通过大部分测试范例 2020-03-01 12:13:41 +08:00
tearshark
3ba9a56cae 优化一点内存占用空间和性能
更好的兼容clang
版本升级到2.2.1
2020-02-29 01:11:21 +08:00
tearshark
9ae5ee31f3 完善切换调度器的功能 2020-02-27 14:45:55 +08:00
tearshark
f19966d85e 增加切换调度器的功能
版本号升级到2.2.0
2020-02-27 14:05:45 +08:00
tearshark
469d583cad 多线程里使用channel测试通关 2020-02-21 09:36:59 +08:00
tearshark
a5b28cd778 完整编译x64+x86 2020-02-19 17:01:55 +08:00
tearshark
3badb4e13f 增加测试内存布局的范例 2020-02-19 16:05:19 +08:00
tearshark
d1de24135f generator_t的state也跟promise分配在一起。 2020-02-18 14:48:51 +08:00
tearshark
9dcb2d8baf 将state和协程所用的内存分配到一起。
处理好协程的析构
2020-02-18 13:15:16 +08:00
tearshark
a61c9b2c64 优化state的内存布局和大小 2020-02-18 11:42:42 +08:00
tearshark
421e884680 优化state占用的内存 2020-02-18 11:32:20 +08:00
tearshark
a9b2f7279e 兼容clang 8.0版本 2020-02-16 15:06:09 +08:00
tearshark
65709ca487 完成sleep结合event的范例测试 2020-02-16 13:02:26 +08:00
tearshark
39cd2f5dcf awaitable_t兼容老的future用法
完成相关范例
2020-02-16 12:14:25 +08:00
tearshark
2bd318d052 future支持yield语法,并完成相关范例 2020-02-16 12:03:51 +08:00
tearshark
8d580dcda4 支持generator,完成相关范例 2020-02-16 11:33:19 +08:00
tearshark
7289258a75 准备支持调度generator 2020-02-16 10:27:00 +08:00
tearshark
aa96b843dd 完成新版本下协程frame pointer的测试 2020-02-16 01:43:56 +08:00
tearshark
76811ba691 恢复新版本下的sleep功能
完善新版本下的部分测试用例
2020-02-16 01:18:25 +08:00
tearshark
3f64156e82 改版后第一次正常跑完回调测试 2020-02-16 00:47:45 +08:00
tearshark
3575506740 将state的操作封装在其内部,以便于检查是否加锁而从保证了线程安全 2020-02-15 17:53:11 +08:00
tearshark
1508d08027 使用新的state/promise/future和调度器,以便于完成调度链传递 2020-02-15 15:20:16 +08:00
tearshark
256dbb8584 深入理解协程的初始化过程 2020-02-15 13:32:14 +08:00
tearshark
c4e3c989bb 使用 remove_cvref 替换 decay 2020-02-08 21:22:39 +08:00
tearshark
1a0817bd02 兼容 asio 1.14.1版本
兼容 VS2019 version 16.5.0 preview 2.0
2020-02-08 21:05:44 +08:00
tearshark
6c659d57e2 改善协程切换测试代码 2019-10-09 10:08:31 +08:00
tearshark
563abf8aa3 增加一些注释 2019-10-09 09:43:10 +08:00
tearshark
38ebb41e03 Modern Callback增加演示多返回值,返回异常的范例 2019-04-25 17:56:51 +08:00
tearshark
507f0d885b Modern Callback增加演示多返回值,返回异常的范例 2019-04-25 17:48:42 +08:00
tearshark
06bd2d5647 Modern Callback增加演示多返回值,返回异常的范例 2019-04-25 17:26:16 +08:00
tearshark
04d1d2ea1f 优化Modern Callback范例,使得modern_callback_adapter_t更加通用并简化使用 2019-04-25 16:07:37 +08:00
tearshark
5316643d0d 增加modern callback范例代码 2019-04-21 09:05:04 +08:00
tearshark
ec11d549ef boost::any作为可选,用来替换std::any
进一步减少使用C++17的语法
2018-09-18 14:04:40 +08:00
tearshark
48532d71fb 尽量兼容VS2015 2018-09-18 13:43:50 +08:00