私は Java で一般的なネットワーク ノンブロッキング ソケット ライブラリを使用しています。デフォルトの JVM ではすべて正常に動作しますが、Android プラットフォームでは次のコードがブロックされます。
DatagramChannel channel;
. . .
channel.bind(...)
channel.configureBlocking(false);
. . .
channel.register(udpSelector, SelectionKey.OP_READ | SelectionKey.OP_WRITE);
register() のブロック、実行は 20 ~ 40 秒または永久にブロックできます。OP_READ のみまたは OP_WRITE のみと同じです。
修正方法のヒントはありますか?
編集:Android 2.3とAndroid 4.0.4で同じ問題