首页 > 解决方案 > 如何正确初始化 sigset_t

问题描述

众所周知,如果需要重置一个sigset_t变量,只需

    sigemptyset(&my_ss);

我想知道是否有一种标准方法来初始化此类变量以使其为空(即,就像用户刚刚使用上述方法重置它一样)。也许某种宏,例如来自 pthread API 的宏。例如

static sigset_t trackedSignals = SIGSET_INITIALIZER;

{0}在 Linux 系统上,使用这样的初始化程序显然就足够了,但是它可以在任何地方工作吗?因为正如我所见,POSIX 很少定义这种类型:

sigset_t

[CX] 用于表示信号集的对象的整数或结构类型。

因此,严格来说,{0}不必将此对象初始化为语义上的“空”。

标签: clinuxunixsignalsposix

解决方案


推荐阅读