学习concurrency programming进展
看了一段时间的actor model,goroutine之类的东东,最近在github上写了个简单的框架,
注:未做大量测试,仅供学习用,勿用于生产用途
链接: https://github.com/hejinshou/SimpleActorModel
里面有几个例子
- example_actor_singlethread.cpp 单线程actor框架
- example_actor_thread.cpp 每个actor一个线程
- example_lift.cpp 电梯调度程序,使用每个actor一个线程
- example_actor_coroutine.cpp 使用coroutine做单线程调度的actor框架
- example_actor_coroutine_ring.cpp 环形队列测试
- actor_threadpool.cpp 基于线程池的actor框架
- example_actor_coroutine_yield.cpp yield测试
- example_lift.cpp 电梯调度例子(注:未做详细测试)
- example_task.cpp 利用actor model实现的task框架
- testLibTask-channel.cpp task框架channel测试,该框架支持coroutine+基于work sharing的多线程调度
- testLibTask-channel2.cpp task框架channel测试
- testLibTask-skynet.cpp boost::fiber里的skynet测试
- testLibTask-sleep.cpp sleep测试
学习concurrency programming进展的更多相关文章
- zz2019年主动学习有哪些进展?答案在这三篇论文里
2019年主动学习有哪些进展?答案在这三篇论文里 目前推广应用的机器学习方法或模型主要解决分类问题,即给定一组数据(文本.图像.视频等),判断数据类别或将同类数据归类等,训练过程依赖于已标注类别的训练 ...
- [译]2016年深度学习的主要进展(译自:The Major Advancements in Deep Learning in 2016)
译自:The Major Advancements in Deep Learning in 2016 建议阅读时间:10分钟 https://tryolabs.com/blog/2016/12/06/ ...
- GraphX学习笔记——Programming Guide
学习的资料是官网的Programming Guide https://spark.apache.org/docs/latest/graphx-programming-guide.html 首先是Gra ...
- Concurrency Programming Guide 并发设计指引(二)
以下翻译是本人通过谷歌工具进行翻译,并进行修正后的结果,希望能对大家有所帮助.如果您发现翻译的不正确不合适的地方,希望您能够发表评论指正,谢谢.转载请注明出处. Concurrency and App ...
- [CUDA] 00 - GPU Driver Installation & Concurrency Programming
前言 对,这是一个高大上的技术,终于要做老崔当年做过的事情了,生活很传奇. 一.主流 GPU 编程接口 1. CUDA 是英伟达公司推出的,专门针对 N 卡进行 GPU 编程的接口.文档资料很齐全,几 ...
- 算法导论学习-Dynamic Programming
转载自:http://blog.csdn.net/speedme/article/details/24231197 1. 什么是动态规划 ------------------------------- ...
- 对Spark2.2.0文档的学习3-Spark Programming Guide
Spark Programming Guide Link:http://spark.apache.org/docs/2.2.0/rdd-programming-guide.html 每个Spark A ...
- 开始学习Functional Programming
打算先学F#, 再学Scala. 第一个F#程序 open System [<EntryPoint>] let main argv = let a = "Hello, World ...
- 【RL前沿】深度强化学习的最新进展 by 2017.12.12
作者:Volodymyr Mnih Google DeepMind科学家. 在Geoffrey Hinton的指导下完成了多伦多大学的机器学习博士学位. 在此之前,在Csab Szepesvari的指 ...
随机推荐
- Core Java 面经
1 面向对象的特征有哪些方面? (1)抽象,抽象就是忽略与当前目标无关的部分,抽象包含两个方面,一是过程抽象,一是数据 (2)继承,是Java中允许和鼓励类重用的思想的体现,, 它提供了一种方式,可 ...
- java websocket学习
引言: websocket,webservice傻傻分不清楚,都觉得是很高深的东西,理解中的webservice是一种协议,通信协议,类似http协议的那种,比如使用webservice协议调后台接口 ...
- <Spark><Running on a Cluster>
Introduction 之前学习的时候都是通过使用spark-shell或者是在local模式运行spark 这边我们首先介绍Spark分布式应用的架构,然后讨论在分布式clusters中运行Spa ...
- day 35 关于线程
并发编程之协程 对于单线程下,我们不可避免程序中出现io操作,但如果我们能在自己的程序中(即用户程序级别,而非操作系统级别)控制单线程下的多个任务能在一个任务遇到io阻塞时就切换到另外一个任务去计 ...
- ChinaCock界面控件介绍-CCLoadingIndicator
这是一个显示等待状态的控件,当在线程中执行一个稍长时间的任务,需要显示一个等待过程,免得让用户不知app在做什么?避免用户寂寞. 先看看这个控件的属性说明: BackgroundTransparenc ...
- Golang AES加密
package main import ( "crypto/aes" "crypto/cipher" "fmt" "os" ...
- socket 聊天室实现
server #include <stdio.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket ...
- Mac 终端添加代码到SVN
从SVN拉取代码步骤: 1.cd /Users/mark/zkh/Work/BC/(本地路径) 2.svn checkout https://192.168.2.99/svn/bc_android ...
- [LeetCode&Python] Problem 258. Add Digits
Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. ...
- qt 内置图标使用
QToolButton *button = new QToolButton(this); button->resize(100,30); button->setToolButtonStyl ...