NIO SelectionKey attachment()空指针错误
Channel注册到Selector时添加了一个Object:
serverSocketChannel1.register(selector, SelectionKey.OP_ACCEPT, num[0]);
后来取这个Object:
selectionKey.attachment();
出现空指针错误:
Exception in thread "main" java.lang.NullPointerException
很奇怪,后来发现第一次注册时添加了Object,后来注册时没有添加,导致了空指针错误:
client.register(selector, SelectionKey.OP_READ);
每次注册都添加Object,就不会有这个错误了:
client.register(selector, SelectionKey.OP_READ, num);
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步