我在 openSUSE Linux (v15.1) 中,使用 berkeley 套接字。
我有一个“发送者”应用程序,每秒发送一个数据报。另一个一直在阅读的“接收器”应用程序。它运作良好。
但是如果我都关闭了,从发送者发送一些数据报,关闭它......然后激活接收器,没有什么可以读取的。所以数据报不见了。
我需要这个,因为我正在以给定的速度读取数据报,并且我需要确保其中至少有一个保持在那里。
我发现在套接字上设置了一个“接收缓冲区”,您可以使用“ getsockopt ”读取和更改输入和输出缓冲区的信息,并使用“setsockopt”进行更改。
但是当我读取套接字时,即使我知道发送了一些东西,也什么都没有。那么包裹在那里存放了多长时间?. 我找不到任何方法来检查或更改“getsockopt”选项。