Jythonインタープリタで繰り返し urllib2 を使う処理をしようとするとこの例外が発生する。
Jython は内部実装で netty を使っているが、ソケットを閉じた後再度開かずにこけるらしい。
いろいろググったけどなかなか有益な情報にたどり着けなかったけれど、苦労して発見したので記録。
Krzysztof Guć (krzysiek-q) wrote on 2016-12-27: #5
Hi All.Hi Guys, J found Solution:
try add something that in header:
import sys, _socket
if _socket.NIO_GROUP.isShutdown():
print "RE-CREATEING NIO_GROUP"
_socket.NIO_GROUP = _socket.NioEventLoopGroup(2, _socket.DaemonThreadFactory("PyScan-Netty-Client-%s"))
sys.registerCloser(_socket._shutdown_threadpool)
これで解決しました。
名前は読めないけど、ありがとう!