在断网或服务器未开启的情况下,客户端多次点击 连接按钮创建了多个连接,如何解决啊?
private void connectThread() {
socketConnectThread=new Thread(new Runnable() {
@Override
public void run() {
Looper.prepare(); // 将当前线程初始化为Looper线程
edtIP = sharedPreferences.getString("IP", "192.168.43.168");
edtPort = sharedPreferences.getString("PORT", "8080");
connectServer(edtIP, edtPort);
// Looper.loop(); // 开始循环处理消息队列,可删,是我添加的
}
});
socketConnectThread.start();
}
}
private void connectServer(String ip, String port) {
mSocket = new Socket(ip, Integer.parseInt(port));
}
在断网或服务器未开启的情况下,客户端多次点击 连接按钮 运行connectThread()函数,然后开启服务端时发现客户端创建了多个连接,但是如果先开启服务端,多次点击连接按钮并不会创建多个连接,没问题。这该如何解决啊?
public void stopSocket() {
if (mSocket != null) {
mSocket.close();
mSocket = null;
}
}
即使我在点击连接按钮时提前运行 stopSocket()方法也没效果啊。