gpt4 book ai didi

linux - 在共享内存文件上引发 Linux 轮询事件

转载 作者:IT王子 更新时间:2023-10-29 00:07:14 25 4
gpt4 key购买 nike

两个 Linux 进程打开并映射同一个/dev/shm/共享内存文件,并将其用作公共(public)内存。问题:一个进程“唤醒”另一个进程以通知它应该在内存中查找的最简单和最好的方法是什么?例如,一个进程是否可以为另一个进程的文件描述符引发 poll() 事件?该解决方案不需要便携,但我希望它简单。

最佳答案

这就是 POSIX 有条件变量的原因。

在共享内存区域中定义共享 POSIX 条件变量及其关联的互斥体。

然后让一个线程等待条件变量,另一个线程在希望另一个线程查看内存时向条件变量事件发出信号。

网上有很多关于条件变量的资料。这是一个相当不错的短篇:https://computing.llnl.gov/tutorials/pthreads/#ConditionVariables

关于linux - 在共享内存文件上引发 Linux 轮询事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11470322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com