C++协程

深入理解协程

什么是协程

协程是一种函数对象,可以设置锚点做暂停,然后再该锚点恢复继续运行,我觉得这是最合适的定义,用户态线程,轻量级线程,可中断恢复的函数

boost中的例子

mac下boost在Clion中的配置

利用brew install boost完成安装

使用CMake进行构建

cmake_minimum_required(VERSION 3.19)
project(coroutine_test)

set(CMAKE_CXX_STANDARD 20)

add_executable(coroutine_test main.cpp)

find_package(Boost 1.76.0 COMPONENTS system filesystem REQUIRED)

find_package(Boost COMPONENTS thread REQUIRED)
if(NOT Boost_FOUND)
    message(FATAL_ERROR "Could not find boost!")
endif()
include_directories(${Boost_INCLUDE_DIRS})

target_link_libraries(coroutine_test ${Boost_LIBRARIES})

C++协程

asio中的协程

c++20的协程

协程的应用场景

协程的分类


updatedupdated2022-01-212022-01-21