【发布时间】:2017-11-21 15:35:26
【问题描述】:
我有一个使用pthread_setschedparam() 设置线程优先级的C++ 应用程序。在 docker 容器中,这会因 EPERM 而失败。
如何检测我的进程是否具有设置线程优先级的必要功能?
【问题讨论】:
-
@jwerich:看起来是同一个问题,但没有代码示例如何检查进程是否有能力。
-
对。我想你的容器运行在 CoreOS 之上。不是吗?它看起来像 CoreOS 中的一个错误。
-
至于检查,我相信你可以包括
sys/capability.h(来自libcap)并调用cap_get_proc和cap_get_flag。
标签: c++ docker pthreads linux-capabilities