PTHREAD_SIGQUEUE - Linux手册页
时间:2019-08-20 18:01:05 来源:igfitidea点击:
Linux程序员手册 第3部分
更新日期: 2017-09-15
名称
pthread_sigqueue-将信号和数据排队到线程
语法
#include <signal.h> #include <pthread.h> int pthread_sigqueue(pthread_t thread, int sig, const union sigval value);
编译并链接-pthread。
glibc的功能测试宏要求(请参阅feature_test_macros(7)):
pthread_sigqueue():_GNU_SOURCE
说明
pthread_sigqueue()函数执行与sigqueue(3)类似的任务,但是,与其将信号发送到进程,它没有将信号发送到进程,而是将信号发送到与调用线程相同的进程中的线程。
thread参数是与调用程序相同的进程中的线程的ID。 sig参数指定要发送的信号。 value参数指定信号所伴随的数据;有关详细信息,请参见sigqueue(3)。
返回值
成功时,pthread_sigqueue()返回0;否则,返回0。如果出错,则返回错误号。
错误说明
- EAGAIN
- 已达到可排队的信号限制。 (有关更多信息,请参见signal(7)。)
- EINVAL
- 信号无效。
- ENOSYS
- 在该系统上不支持pthread_sigqueue()。
- ESRCH
- 线程无效。
版本
pthread_sigqueue()函数首先出现在glibc 2.11中。
属性
有关本节中使用的术语的说明,请参见attribute(7)。
Interface | Attribute | Value |
pthread_sigqueue() | Thread safety | MT-Safe |
遵循规范
此函数是GNU扩展。
备注
pthread_sigqueue()的glibc实现在尝试发送NPTL线程实现内部使用的任一实时信号时给出错误(EINVAL)。有关详细信息,请参见nptl(7)。
另外参见
rt_tgsigqueueinfo(2),sigaction(2),pthread_sigmask(3),sigqueue(3),sigwait(3),pthreads(7),signal(7)
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。