并发流程控制 cocoflow

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

软件介绍

Concurrency Control Flow 并发流程控制

一个基于协程和libuv的C++框架,仅通过 startawaitall_ofany_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://codercto.com/soft/d/13750.html

素数之恋

素数之恋

(美)约翰·德比希尔 / 陈为蓬 / 上海科技教育出版社 / 2008-12-01 / 34.00元

1859年8月,没什么名气的32岁数学家黎曼向柏林科学院提交了一篇论文,题为“论小于一个给定值的素数的个数”。在这篇论文的中间部分,黎曼作了一个附带的备注——一个猜测,一个假设。他向那天被召集来审查论文的数学家们抛出的这个问题,结果在随后的年代里给无数的学者产生了近乎残酷的压力。时至今日,在经历了150年的认真研究和极力探索后,这个问题仍然悬而未决。这个假设成立还是不成立? 已经越来越清楚,......一起来看看 《素数之恋》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

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

Markdown 在线编辑器