java.nio.channels.MembershipKey API

Alan Bateman Alan.Bateman at Sun.COM
Thu Nov 27 01:06:58 PST 2008

David M. Lloyd wrote:
> Ressurrecting this old thread - I have one additional comment about 
> the MembershipKey interface.  Rather than have drop()/isValid(), why 
> not extend Channel (or at least Closeable) and have close()/isOpen() 
> instead?  This way any code which has a common resource cleanup 
> mechanism based on Closeable will be able to clean up MembershipKeys 
> in the same way.
> - DML
For resource cleanup, I would expect the multicast channel to be 
registered for close rather than the membership keys. When the multicast 
channel is closed then it drops membership of all groups and invalidates 
all keys. Looking at the javadoc again, I see that this isn't as clear 
as it should. There is wording in MembershipKey to require the key to be 
invalidated when the channel is closed but we don't have wording in 
MulticsatChannel to make it clear that membership is dropped when the 
channel is closed - I will fix that (thanks!). With that fixed, I am 
happy with "drop" (same thing in FileLock with the "release" method).


More information about the nio-dev mailing list