Linux RT Preempt - Are POSIX threads required?
我已通读此示例并浏览此 wiki,了解使用 PREEMPT 修补内核进行实时应用程序开发。前者使用 POSIX 线程,后者仅引用 PTHREAD_PRIO_INHERIT 互斥锁的需要。
所以我没有看到任何说我明确需要 POSIX 线程来利用 PREEMPT 补丁的内容,但它似乎以某种方式被建议。如果我实现了原生 C 11 线程或 boost 线程,我还能获得 PREEMPT 补丁的好处吗?
谢谢
在 POSIX 系统上,
https://en.cppreference.com/w/cpp/thread/thread/native_handle
迟到的答案,但仍然……
在 Linux(和其他 Unix 系统)上,C 标准线程通常在 pthread 之上实现。 C 接口通常更安全和方便,但对于某些事情,您需要原始 Posix 接口。例如,优先级继承互斥锁和一些线程调度设置(至少)不能用于 std::threads。我有时会欺骗和混合 Posix 原语和 std::thread 原语,它对我有用。