发布网友 发布时间:2022-04-30 11:46
共1个回答
热心网友 时间:2022-06-21 23:10
当然FIFO也有它的局限性,如图2所示。客户端可以发请求到服务器,但前提是要知道一个公共的FIFO通道,对于实现服务器回传应答到客户端的问题,可以通过为每一个客户端创建一个专用的FIFO,来实现回传应答。但也有不足,服务器会同时应答成千上万个客户端,创建如此多的FIFO是否会使系统负载过大,相应的如何判断客户端是否因意外而崩溃成为难题,或者客户端不读取应答直接退出,所以服务器必须处理SIGPIPE信号,并做相应处理。
%说明:在服务器端打开公共FIFO的时候,如果仅以读打开,则当所有的客户端都退出时,服务器端会读取到文件结束符。这个问题的解决办法是服务器以读写打开公共FIFO,如图2所示。服务器与客户端如何实现互相通信。
图2 FIFO在客户端与服务器通信的应用2