Boost 1.57 Boost.Context fcontext_t资源管理

Boost 1.57 Boost.Context fcontext_t resource management

本文关键字:Boost 资源管理 Context fcontext      更新时间:2023-10-16

一些上下文

在Boost 1.57 f_context&make_fcontext看起来像这个

// fcontext.hpp:
typedef void* fcontext_t;
fcontext_t BOOST_CONTEXT_CALLDECL make_fcontext( void * sp, std::size_t size, void (* fn)( intptr_t) );

我应该如何管理make_fcontext()返回的资源

我读过文档,在IRC上询问过,也看过例子,但什么都找不到。是否需要释放/删除/关闭此资源?

对于用户来说,fcontext_t是一个标识上下文的句柄,并指定使用jump_fcontext()跳转到哪个上下文。从make_fcontext(stack, context_function)返回的不透明指针所指向的对象将由所提供的堆栈管理。文件说明:

在堆栈顶部创建fcontext_t[…]

还可以查看Boost.Coroutine的实现来查看它对fcontext_t的使用。