我必须设计一个实时系统来处理从 posix mqueue(专有实现)上的多个进程接收到的数据。主要要求是不改变整个系统主循环延迟,而是处理事件。我不想从我接收数据的源进程创建事件,而是创建从自进程到自进程的信号,触发数据被接收,数据将在 EPOLL 处理。
- 那么,做这样的事情安全吗?
- 我尝试了一个伪代码并得到了这个结果:“sigqueue: (errno: 11) 资源暂时不可用”可能是什么 这个问题?
提前致谢。
问候, 塔努吉·辛哈
最佳答案
是的,你可以做到这一点。一种简单的方法是创建一个管道 ( https://linux.die.net/man/2/pipe )。您可以在主循环中读取它并从其他地方写入它。
关于linux - 能否将信号从自身进程推送到自身进程,然后作为 EPOLL 上的事件处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44112200/