您当前的位置: 首页 >  c++

令狐掌门

暂无认证

  • 1浏览

    0关注

    513博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C++ boost协程技术介绍

令狐掌门 发布时间:2021-11-06 18:58:31 ,浏览量:1

  协程在C++20中已经加入了,但并不完善,C++标准库的协程将在C++23中正式推出。其它语言,例如go、python也是默认支持协程,C++相对来说落后了。   Boost在1.53版本就推出了协程库,本篇博客基于Boost1.76版本,来介绍协程库。1.53版本的BoostCoroutine 现在已被弃用,请使用Boost.Coroutine2。

什么是协程

  在谈协程之前,我们先谈谈函数,函数有入口地址,而且只有一个,返回也只有一个,而协程却可以多次进入,多次返回。   协程,英文名是称为Coroutine,微信的后台C++库,libco也应用了大量协程,早在2013年已经开源,有兴趣的可以去拜读。可以在指定地点暂停协程和恢复协程,这意味着协程会保存自己的上下文,不同于线程, 协程的上下文保存是不需要进入内核态的,完全可以在用户态完成。   下面看看协程的分类: 在这里插入图片描述

有栈协程

  每个协程都拥有自己的栈,协程上下文保存在自己的栈中,切换协程就是切换栈,然后恢复栈中的上下文,这种方法

关注
打赏
1652240117
查看更多评论
立即登录/注册

微信扫码登录

0.0411s