0
我想實現類似下面的東西。有兩臺機器(比如他們的ips是A和B)監聽固定端口上的數據(比如P和Q)。我希望他們在他們之間發送消息,而不必關心他是否在聽。我查看套接字,但它遵循客戶端服務器模式,這不符合我的要求。兩臺機器之間的Java網絡通信
例如,我正在尋找的是這樣的。
B則以下
Communicator c = new Communicator(A,P); //does not block
c.write(byteArray); //does not block
while(true)
{
if(c.hasData())
{
bytes[] bytes = c.readData();
}
}
A不一樣的。 A和B都在一個循環內的不同線程中讀寫,並且不關心另一端是否正在接收數據。
更多解釋:問題是一臺機器可能會超出wifi範圍。如果它在範圍內,我希望它收到消息。
我想你可以說我試圖在沒有服務器的兩臺機器和已知端口之間進行通信。
是否有一個在Java中可以使用的API?或者一些外部圖書館?
如果其中一個沒有在監聽,那麼試圖發送消息的時候沒有人會收到它? – vandale 2015-03-19 06:07:05
我添加了一個解釋。問題在於一臺機器可能會超出wifi範圍。如果它在範圍內,我希望它收到消息。「 – 2015-03-19 06:10:10