1

一些上下文

在 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 上询问并查看了示例,但找不到任何东西。是否需要释放/删除/关闭此资源?

4

1 回答 1

3

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

fcontext_t在堆栈顶部创建一个[...]

还可以查看 Boost.Coroutine 的实现以了解其对fcontext_t.

于 2015-03-26T15:54:56.143 回答