【发布时间】:2011-03-09 17:58:16
【问题描述】:
我想知道一个程序每秒可以捕获多少个信号(或任何时间比)。 问题是我想每 8 接收 8 个信号来填充一个字符(用 sigusr1 表示“0”,sigusr2 表示“1”)当我不使用类似睡眠的功能时,程序发送“用户信号 1 或2" 然后退出。
有没有办法确定一个程序可以捕获多少信号? 在我的测试中,它取决于序列持续时间(对于 100 个数字,他不会错过一个数字,但超过 500 个数字他会开始错过其中一些,我在每次传输之间使用 usleep(1000)。
谢谢。
编辑:抱歉发送得太早了。
【问题讨论】:
-
像这样使用信号来传递数据是一个骇人听闻的想法。你可以告诉你的教职员工我是这么说的——但你可能不会通过实际这样做来赢得很多朋友。信号适用于极少数情况,而不是高密度通信。
-
感谢您的建议,但我真的很期待使用信号
-
如果您遇到可靠性问题,请将其视为噪声通道,并制定一个协议来纠正丢失的信号(位)或错误解释的位(可能是由丢失信号引起的) ,也许是一种向发送者确认接收者正在处理的方式。