我想使用 CPU_SET
, 这是一个 glibc linux 特定的宏,应该在 sched.h
中定义手册页明确指出 _GNU_SOURCE
必须定义以便定义宏。但是,查看标题,CPU_SET
仅当 __USE_GNU
时才定义已定义(有 #ifdef
保护)。我好像记得几年前_GNU_SOURCE
需要。
问题:
1) 很明显,联机帮助页已关闭。如何通知维护人员手册页不正确?
2) 从 _GNU_SOURCE
转换的时间是什么时候?至__USE_GNU
发生(根据版本或时间)
3) 是否存在新版本的 glibc 仍然使用 _GNU_SOURCE
的情况? ?或者我可以安全地假设定义 __USE_GNU
够了吗?
最佳答案
_GNU_SOURCE
是您应该定义自己的唯一一个。 __USE_GNU
在定义 _GNU_SOURCE
时通过 features.h
中的机制(包含在所有其他 glibc 头文件中)在内部定义,并且可能在其他条件。自己定义或取消定义 __USE_GNU
会严重破坏 glibc 头文件。
关于c++ - _GNU_SOURCE 和 __USE_GNU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7296963/