C POSIX,在pthread_t和x27之间传递应用程序数据;s

C POSIX,在pthread_t和x27之间传递应用程序数据;s,c,multithreading,pthreads,posix,C,Multithreading,Pthreads,Posix,我试图找到一种方法,使用pthread_kill()将自定义(void*)指针从一个线程传递到另一个线程。 场景是这样的:从单个线程调用多个自定义异步警报(对于一些阻塞操作,如读取、侦听等),我希望能够在处理程序中根据自定义属性区分接收到的超时信号。 我已经调查过处理者了 void handler(int, siginfo_t*, void*) 与sau SIGINFO结合使用,并找到了struct sigval,但我找不到借助它传递某些数据的方法 我想一种方法是使用intsigqu

我试图找到一种方法,使用pthread_kill()将自定义(void*)指针从一个线程传递到另一个线程。
场景是这样的:从单个线程调用多个自定义异步警报(对于一些阻塞操作,如读取、侦听等),我希望能够在处理程序中根据自定义属性区分接收到的超时信号。
我已经调查过处理者了

void handler(int, siginfo_t*, void*) 
sau SIGINFO
结合使用,并找到了
struct sigval
,但我找不到借助它传递某些数据的方法

我想一种方法是使用
intsigqueue(pid\utpid,intsig,constunionsigval值)
但我在OSX上运行,它没有实现()
如果你能就这个问题向我提出一个想法,谢谢你

listen();我的意思是accept()。信号不是一个很好的工具。这听起来像是XY问题。好的,我理解你回答的10%:)我会使用SysV IPC传递你的值(例如
msgsnd
msgrcv
)。它们在传递数据时具有更好的R/T特性。试图使用信号处理程序传递数据是很困难的。将其保存为真正的异常。