使用u_context结构体-什么是uc_stack.Ss_flags用于

using u_context structs - what is uc_stack.ss_flags used for?

本文关键字:stack uc Ss flags 用于 什么 context 结构体 使用      更新时间:2023-10-16

我试图使用getContext()和setContext()在c++应用程序中操纵线程。我注意到ucontext_t结构有这个字段,uc_stack.ss_flags。这些旗子有什么用途?我想知道它们如何在线程库中用于垃圾收集。通常默认设置为0。

sigstack.h中我看到:

/* Possible values for `ss_flags.'.  */
enum
{
  SS_ONSTACK = 1,
#define SS_ONSTACK  SS_ONSTACK
  SS_DISABLE
#define SS_DISABLE  SS_DISABLE
};

搜索这些会把我们带到这里:http://pubs.opengroup.org/onlinepubs/009695399/functions/sigaltstack.html

说:

  • SS_ONSTACK进程当前正在执行备用信号堆栈。进程时试图修改备用信号堆栈正在执行失败。这个标志不能被进程修改。
  • SS_DISABLE备用信号栈当前被禁用。