On 4/6/2021 3:52 AM, Noel Grandin wrote:
On 2021/04/01 6:02 pm, Ken Brown via Cygwin wrote:
Here's the issue, briefly. The communication is done via a Windows named
pipe. The receiver creates the pipe when it creates and binds its socket. It
creates only one pipe instance. The sender connects to the pipe, writes, and
closes its handle. But the pipe is not available for another sender to
connect to until the receiver reads the message, after which it disconnects
the sender.
This
https://docs.microsoft.com/en-us/windows/win32/ipc/named-pipe-instances
seems to indicate that multiple pipe instances are needed to handle multiple
clients nicely - it also has sample code for such.
Yes, we do that for stream sockets that are listening. Whenever there's a
connection, a new pipe instance is created so that the listening socket can
continue listening. But I don't see an easy way to adapt this to datagram
sockets, and I'm not even sure it's appropriate in that case.
Ken
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple