合作社:基于C ++ 20协程的协作多任务库-源码

上传者: 42149145 | 上传时间: 2021-03-30 09:13:53 | 文件大小: 69KB | 文件类型: ZIP
:chicken: 鸡舍 Coop是一个基于C ++ 20协程的库,可在多线程应用程序的上下文中支持。 使用其他编程语言的async和await功能的用户将熟悉该语法。 用户不需要了解C ++ 20间的协同程序API使用这个库。 特征 附带默认的具有亲和力的两优先级线程安全任务调度程序。 任务计划程序可以与您自己的任务交换 支持调度用户定义的代码和操作系统完成事件(例如,在I / O完成后发出信号的事件) 易于使用,高效的API,并且代码占用空间小且易于消化(数百行代码,而不是数千行) Coop中的任务渴望而不是懒惰,这意味着在暂停后,协程将立即派出,以具有适当亲和力的工人执行。 懒惰地构造事物有很多好处(请参阅本精彩的),Coop选择按照它的方式来做事情,因为: Coop旨在与现有作业/任务图系统互操作 Coop最初是在不使用异常的游戏引擎环境中编写的 对于游戏引擎,具有CPU拓扑感知的分发机制

文件下载

资源详情

[{"title":"( 22 个子文件 69KB ) 合作社:基于C ++ 20协程的协作多任务库-源码","children":[{"title":"coop-main","children":[{"title":"ARCHITECTURE.md <span style='color:#111;'> 2.54KB </span>","children":null,"spread":false},{"title":"test","children":[{"title":"test.cpp <span style='color:#111;'> 3.67KB </span>","children":null,"spread":false},{"title":"CMakeLists.txt <span style='color:#111;'> 568B </span>","children":null,"spread":false}],"spread":true},{"title":"include","children":[{"title":"coop","children":[{"title":"scheduler.hpp <span style='color:#111;'> 3.38KB </span>","children":null,"spread":false},{"title":"task.hpp <span style='color:#111;'> 15.34KB </span>","children":null,"spread":false},{"title":"source_location.hpp <span style='color:#111;'> 248B </span>","children":null,"spread":false},{"title":"detail","children":[{"title":"concurrentqueue.h <span style='color:#111;'> 210.47KB </span>","children":null,"spread":false},{"title":"lightweightsemaphore.h <span style='color:#111;'> 15.30KB </span>","children":null,"spread":false},{"title":"tracer.hpp <span style='color:#111;'> 435B </span>","children":null,"spread":false},{"title":"blockingconcurrentqueue.h <span style='color:#111;'> 24.95KB </span>","children":null,"spread":false},{"title":"work_queue.hpp <span style='color:#111;'> 1.71KB </span>","children":null,"spread":false}],"spread":true},{"title":"event.hpp <span style='color:#111;'> 3.06KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"LICENSE <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"work_queue.cpp <span style='color:#111;'> 2.86KB </span>","children":null,"spread":false},{"title":"scheduler.cpp <span style='color:#111;'> 6.96KB </span>","children":null,"spread":false},{"title":"event.cpp <span style='color:#111;'> 3.57KB </span>","children":null,"spread":false},{"title":"CMakeLists.txt <span style='color:#111;'> 160B </span>","children":null,"spread":false}],"spread":true},{"title":".clang-format <span style='color:#111;'> 2.22KB </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 26B </span>","children":null,"spread":false},{"title":"CMakeSettings.json <span style='color:#111;'> 1.30KB </span>","children":null,"spread":false},{"title":"CMakeLists.txt <span style='color:#111;'> 1.86KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 11.57KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明