我刚开始学习 Java,但遇到了这个问题:我有一个无限的 while 循环,它创建了一个通过套接字发送的消息;当前,直到从队列中轮询多个元素并读取它们之前,才会发送消息。
String msg = null;
String toSend = "";
String currentNumOfMsg = 0;
String MAX_MSG_TO_SEND = 200;
while(true) {
if ((msg = messageQueue.poll()) != null) { // if there is an element in the list
toSend += (msg + "#");
currentNumOfMsg++;
if (currentNumOfMsg == MAX_MSG_TO_SEND) {
try {
sendMessage(toSend); // send to socket
} finally {
msg = null;
toSend = "";
currentNumOfMsg = 0;
}
}
}
}
我的目标是在 N 秒后发送消息,而不是等待到达 MAX_MSG_TO_SEND ......是否可以这样做,或者我将继续使用这种方法?
慕尼黑5688855
相关分类