某些POSIX线程实现定义pthread_setname_np()
来设置线程的显示名称。但是,这似乎是非标准扩展。
如何(通过预处理器指令)测试该功能是否在我要构建的平台上可用,如果没有,则跳过该调用?
答案 0 :(得分:0)
您无法使用预处理器测试功能是否存在。
这种事情正是人们使用autoconf之类的构建配置工具的原因。想法是,只有在具有这样的功能的情况下,您才能构建环境定义像HAVE_PTHREAD_SETNAME_NP
这样的预处理器宏,然后您的代码就可以使用#ifdef
测试该宏。