并发流程控制 cocoflow

码农软件 · 软件分类 · 并发/并行处理框架 · 2019-09-02 22:26:45

软件介绍

Concurrency Control Flow 并发流程控制

一个基于协程和libuv的C++框架,仅通过 start、 await、 all_of、 any_of 控制流程。

  • 基于 协程(Coroutine) & libuv 的C++开发框架
  • 使用 start | await | all_of | any_of 四个原语控制流程
  • 同步的用户接口 & 异步的运行过程
  • 阻塞只是hold住运行状态然后切换
  • 任何操作都不会真正阻塞线程
  • 支持 Linux & Windows
  • 提供 sleep sync udp tcp 等预设任务


任务

  • 并发流程中最小的控制单元
  • 一段逻辑上可能阻塞的过程视为任务


原语

start —— 异步地执行一个<任务>,该过程不阻塞当前任务的执行,目标任务启动后立即继续
await —— 同步地执行一个<任务>,该过程会阻塞当前任务的执行,等待目标任务执行完成后继续
all_of —— 将多个<任务>组合为一个新的任务,全部任务执行完成后新的任务视为执行完成

any_of —— 将多个<任务>组合为一个新的任务,任一任务执行完成后新的任务视为执行完成,同时会取消掉其他未执行完成的任务


示例:你需要等待两个udp的recv事件,并且需要设置一个超时时间,则你可以用使用:

await(
    any_of(
        all_of(
            udp0.recv,
            udp1.recv
        ),
        sleep(x ms)
    )
)

 

本文地址:https://www.codercto.com/soft/d/13750.html

Hacking Growth

Hacking Growth

Sean Ellis、Morgan Brown / Crown Business / 2017-4-25 / USD 29.00

The definitive playbook by the pioneers of Growth Hacking, one of the hottest business methodologies in Silicon Valley and beyond. It seems hard to believe today, but there was a time when Airbnb w......一起来看看 《Hacking Growth》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器