new Thread(new Runnable() {
@Override
public void run() {
int count = 0;
while (true) {
try {
Socket socket = new Socket("192.168.10.101", 60000);
OutputStream os = socket.getOutputStream();
String string = "tcp client count = "+count++;
os.write(string.getBytes());
os.flush();
Thread.sleep(100);
os.close();
socket.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
注意设置权限:
<uses-permission android:name="android.permission.INTERNET"/>结果:
【Receive from 192.168.10.110 : 46736】:
tcp client count = 0
【Receive from 192.168.10.110 : 59447】:
tcp client count = 1
【Receive from 192.168.10.110 : 45333】:
tcp client count = 2
【Receive from 192.168.10.110 : 40047】:
tcp client count = 3
【Receive from 192.168.10.110 : 32905】:
tcp client count = 4
【Receive from 192.168.10.110 : 59586】:
tcp client count = 5
【Receive from 192.168.10.110 : 35389】:
tcp client count = 6
【Receive from 192.168.10.110 : 46435】:
tcp client count = 7
【Receive from 192.168.10.110 : 48257】:
tcp client count = 8
本文展示了一个使用Java实现的TCP客户端程序,该程序通过循环建立连接并向指定服务器(IP地址为192.168.10.101,端口60000)发送递增的计数信息。每次发送后,客户端休眠100毫秒,之后关闭当前连接并等待3秒再次尝试建立新的连接。展示了如何处理异常情况,并确保了应用程序的稳定运行。
669

被折叠的 条评论
为什么被折叠?



