我希望能够异步等待套接字,然后同步读取它:
for (;;)
{
while (data available on socket)
{
read message from socket;
process it;
}
do something else;
}
Run Code Online (Sandbox Code Playgroud)
我需要这个,因为我想同时使用来自GUI的消息轮询队列,所以"做其他事情"部分有一个简短的wait().
这是可以使用Java套接字吗?我试图检查.available()在DataInputStream与套接字相关联,但
我尝试使用Selector进行此操作,但它要求套接字通道始终处于非阻塞模式.