sigqueue 可以与 pthreads 一起使用吗?
Can sigqueue be used with pthreads?
可以在多线程中使用sigqueue而不是pthread_kill()
,因为我想在sigqueue中使用(const union sigval value
)。我的 Linux 中没有pthread_sigqueue()
。
在 Linux 下,可以使用 gettid()
系统调用从内核中提取特定于线程的pid_t
,然后可以与 sigqueue()
一起使用。然而,这是Linux特有的,并且非常不可移植。
由于gettid()
很可能无法通过Linux的libc获得,因此您可能希望使用以下代码来实现它:
#define _GNU_SOURCE
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/types.h>
pid_t gettid(void)
{
return syscall(SYS_gettid);
}
相关文章:
- 如何将enable-if与模板参数和参数包一起使用
- 如何将PERF_AMPLE_READ与mmap一起使用
- 如何将两个不同矢量的同一位置的两个元素组合在一起
- 如何将C++中的库和头与MinGW一起使用
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 为什么我不能将 rand() 与数组的大小一起使用?
- 要与"if constexpr"一起使用的编译时消息(在预处理器之后)
- 不能将复制初始化与隐式转换的多个步骤一起使用
- 将fold表达式与std::一起用于两个元组
- spdlog标头仅与外部fmt一起使用.spdlog错误:'内部':不是'fmt'
- 将 std::allocate_shared 与多态资源分配器一起使用
- 为什么常量词在重载运算符中不与 ostream 对象一起使用<<?
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- 将 exprtk 与自定义类的对象一起使用
- 将 std::set 与基于键的比较器一起使用
- 将 C++ 类与 Rcpp 一起使用,从 C 或 R 修改它
- 如何将 Eigen::Ref 与 pybind11 一起使用?
- 如何将AERT_Allocate与 std:vector 一起使用
- sigqueue 可以与 pthreads 一起使用吗?
- 外部"C" OO C++中与 pthreads 一起使用