协程的设计原理一、协程的起源1. 为什么会有协程?Handle方式一Handle方式二2. 协程解决了什么问题?3. 协程如何使用?与线程使用有何区别?4.协程可以用在什么地方?5. 多进程+协程 和 多线程+协程二、IO异步操作与协程结合的组件-NtyCo1. NtyCo介绍2. 协程的实现之工作流程1. 创建协程2. 实现 IO 异步操作3. 回调协程的子过程3. 协程的实现之原语操作cre
纯c协程框架NtyCo实现与原理前言1. 为什么会有协程,协程解决了什么问题?网络IO优化IO 同步 操作性能测试IO 异步 操作性能测试协程的诞生2. 原语yield()scheduleresume()代码+图 进行理解如何实现yield和resume3. 切换寄存器介绍汇编实现切换4. 协程的运行流程协程如何使用,协程的api协程工作流程创建协程回调协程的子过程协程封装posix api异步
转载
2023-07-11 08:34:23
32阅读
文章目录1、协程的背景1.1、同步与异步1.2、为什么使用协程1.3、协程的适用场景2、协程的原语操作3、协程的切换3.1、汇编实现4、协程的定义4.1、多状态集合设计4.2、调度器的定义4.2、调度策略生产者消费者模式多状态运行5、api 封装5.1、hook 机制5.2、hook 函数原型5.3、hook 的使用6、多核模式7、性能测试8、参考 本文以 Ntyco为例,介绍协程的设计原理1、
协程这个概念很久了,好多程序员是实现过这个组件的,网上关于协程的文章,博客,论坛都是汗牛充栋,在知乎,github上面也有很多大牛写了关于协程的心得体会。突发奇想,我也来实现一个这样的组件,并测试了一下性能。借鉴了很多大牛的思想,阅读了很多大牛的代码。于是把整个思考过程写下来。实现代码 https://github.com/wangbojing/NtyCo代码简单易读,如果在你的项目中,
原创
精选
2018-08-03 19:13:45
10000+阅读
点赞
1评论
协程这个概念很久了,好多程序员是实现过这个组件的,网上关于协程的文章,博客,论坛都是汗牛充栋,在知乎,github上面也有很多大牛写了关于协程的心得体会。突发奇想,我也来实现一个这样的组件,并测试了一下性能。借鉴了很多大牛的思想,阅读了很多大牛的代码。于是把整个思考过程写下来。实现代码 https://github.com/wangbojing/NtyCo代码简单易读,如果在你的项目中,N
原创
2022-03-30 16:59:05
362阅读
C++后端开发是一个庞杂的技术栈,因为没有统一的开发框架并且应用行业非常广泛。所有涉猎广泛,这里就把C++后端开发的技术点进行整理总结,看完以后,不会让你失望的。1.精进基石,分为四个方面(数据结构,设计模式,c++新特性,Linux工程管理)数据结构部分设计模式C++新特性Linux工程管理2.高性能网络设计(网络编程,网络原理,协程ntyco,用户态协议栈ntytcp)网络编程网络原理自研框架
原创
2022-04-20 18:22:18
456阅读