【发布时间】:2014-03-19 09:22:44
【问题描述】:
我创建了一个线程并在单击按钮时调用它:
btnUpload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Thread(new ClientThread()).start();
}
});
这是我的主线:
class ClientThread implements Runnable {
@Override
public void run() {
try {
InetAddress serverAddr = InetAddress.getByName(SERVER_IP);
socket = new Socket(serverAddr, SERVERPORT);
} catch (UnknownHostException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
我需要在按钮单击操作后停止线程。我将如何做?我尝试过布尔,中断方法但不起作用。我怎样才能阻止它?请帮帮我。
【问题讨论】:
-
线程在其运行方法结束时结束其生命周期。
-
您可以参考stackoverflow.com/questions/22166832/…希望对您有所帮助。
-
可能通过停止线程,您的意思是关闭在
run()中创建的套接字? -
是的@mangusta,你是对的。但是怎么做呢?
-
@androidsuckzzz 使该套接字成为
ClientThread的实例变量,并在必要时放置一些修改器方法来关闭它,或者通过直接从ClientThread对象调用来关闭它