有沒有辦法檢查到ServerSocket的傳入連接,所以我的服務器在等待連接時不會停止。檢查傳入連接到ServerSocket
我需要這樣的東西
try {
if (server.thereisarequest()) {
Socket socket = server.accept();
}
}
有沒有辦法檢查到ServerSocket的傳入連接,所以我的服務器在等待連接時不會停止。檢查傳入連接到ServerSocket
我需要這樣的東西
try {
if (server.thereisarequest()) {
Socket socket = server.accept();
}
}
你確定你想要?提供代碼後,只有一個線程正在等待。運行處理接受連接的另一個線程,以便服務器不會停止。 您也可以使用java非阻塞異步I/O(nio和nio2),但在後臺有一個值班線程。
保持簡單...使用無限while
循環,使服務器查找傳入的請求 ...這就是如何大多數服務器的工作..
while (true) {
incoming = s.accept(); // incoming is of type Socket.
}
您可以創建一個新的線程來接受連接。
然後,你有兩個選擇:
ConcurrentLinkedQueue
),並檢查它從你的主線程隊列。
爲什麼?只需在單獨的線程中運行正常的接受循環。 – EJP