[英]Pipe communication
我正在创建一个包含三个组件的应用程序:
EXE1将数据写入管道,然后WCF读取数据并将其发送到EXE2。 但是情况是,EXE1将数据写入管道以进行for循环。所以我只想知道,假设EXE1已将数据写入管道,但是wcf正在做其他工作并且尚未读取该数据。现在EXE1正在尝试写入第二个数据。在这种情况下,是覆盖先前的数据还是EXE1等待一段时间以获取wcf服务。
我想控制这种情况,直到wcf EXE1无法读取第一个数据,必须等待一段时间。我想将数据同步发送到EXE2。
我怎样才能做到这一点?
因为它的名字叫PIPE ,所以先输入的数据首先出现,并且管道中的数据不会被覆盖。
为了在另一端读取之前等待写入:您最好控制另一端的读取量(例如,将消息长度作为第一个字节传递)。 因此,读者知道应该读取多少内容,并且一次只能从管道读取那么多的内容。
您将必须使WCF
服务确认其将要接收的一组特定bytes
。
因此, Exe1
发送10个字节并等待WCF对其进行确认。
如果WCF
不确认, Exe1
将重新发送它(超时)!
如果WCF
确认,您将发送下一个10字节,依此类推.....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.