Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - _NTO_CHF_DISCONNECT pulse: (3 Items)
   
_NTO_CHF_DISCONNECT pulse  
In manual for ChannelCreate
===================
_NTO_CHF_DISCONNECT
Pulse code: 
_PULSE_CODE_DISCONNECT 
Pulse value: 
None

Deliver a pulse when all connections from a process are detached (e.g. close(), ConnectDetach(), name_close()). If a 
process dies without detaching all its connections, the kernel detaches them from it. When this flag is set, the server 
must call ConnectDetach( scoid ) where scoid is the server connection ID in the pulse message. Failure to do so leaves 
an invalid server connection ID that can't be reused. Over time, the server may run out of available IDs. If this flag 
isn't set, the kernel removes the server connection ID automatically, making it available for reuse. 
===================
What a "ConnectDetach( scoid ) where scoid is the server connection ID in the pulse message" is meant here if pulse 
value is mentioned as "None"? 
Also the text tells about "all connections from a process are detached". Is there a single server connection id for 
multiple client connection ids indeed?
Re: _NTO_CHF_DISCONNECT pulse  
Ah sorry! Now I see it. There is scoid in pulse structure.
Re: _NTO_CHF_DISCONNECT pulse  
OK, another question on topic...

What if _PULSE_CODE_DISCONNECT will be queued to channel right before server is going to call ChannelDestroy()? The 
pulse memory will be deallocated by kernel, of course but what about scoid? Will it still be lost?