|
在发布者断开连接后订阅者依然会读到旧数据是DataSocket 服务器的默认行为。只要还有一个活动连接到特定的数据项,则数据值会一直保持。
如果你能知道发布者断开连接的时间,你可以在发布者VI关闭时向DataSocket 服务器写入零。这样订阅者就知道DataSocket 服务器不会再更新。
如果你想捕捉发布者非预期的断开事件,你可以使用如下位置的DataSocket VI:C:\Program Files\National Instruments\Labview xxx\vi.lib\platform\dataskt。在程序框图上点右键选择“选择VI...”,然后浏览上述位置。你可以在程序框图上放置DataSocket Open Connection VI, DataSocket Status VI, 和 DataSocket Data Updated VI 。在DataSocket Open Connection VI的即时帮助中,你可以看到Read VI会等待数据更新或超时。另外,可以是用DataSocket Status VI或 DataUpdated VI 来检查读取的是否是旧数据,然后做相应处理。
|