[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: socket-port



From: John Cowan <cowan@xxxxxxxxxxxxxxxx>
Subject: Re: socket-port
Date: Tue, 18 Jun 2013 17:38:31 -0400

> Shiro Kawai scripsit:
> 
>> Your logic is correct, so, in Gauche, closing one of the socket ports
>> does not close the socket descriptor (it does mark the Scheme-level
>> port structure as 'closed', and it does flush the output port).
> 
> It should also do a shutdown(fd, SHUT_RD) or shutdown(fd, SHUT_WR), which
> is what I was trying to say before.  The latter, for example, signals
> to the peer that no more data will be arriving.

No, it shouldn't shut down the socket, because the socket may be
shared among processes.  A parent process may want to close the
socket fd to keep number of open fd small, while a child process
may still be using it, for example.

--shiro