获取返回的所关注的事件SelectionKey集合
Set<SelectionKey> selectionKeys = selector.keys();
selectionKeys循环处理完事件后,需要进行对它删除。
清除调用selectionKeys.clear()时 抛出异常:
java.lang.UnsupportedOperationException
at java.util.Collections$UnmodifiableCollection.clear(Collections.java:1074)
keys()返回是一个不可修改的集合。只有在channel注销之后才可以删除。非线程安全。
改用
Set<SelectionKey> selectionKeys = selector.selectedKeys();
selectionKeys.clear()或remove抛异常java.lang.UnsupportedOperationException
原文:https://www.cnblogs.com/song27/p/12918130.html