소켓을 사용하여 서버에 연결하는 소프트웨어를 개발 중입니다.안드로이드에서 새 소켓을 기다리고있는 스레드를 멈추는 방법
connectionThread = new Thread(new Runnable() {
public void run() {
InetAddress serverAddress = InetAddress.getByName(ip);
serverSocket = new Socket(serverAddress, port);
//do more stuff
}
});
connectionThread.start();
클라이언트가 서버에 연결하지 않으면 스레드는 시간 초과에 도달 할 때까지 새로운 소켓이 반환 될 때까지 대기합니다.
사용자가 해당 작업을 취소 할 수있게하려고합니다. 사용자가 뒤로 버튼을 클릭하면 connectionThread.interrupt()
으로 전화를 걸려고했습니다. 그러나 스레드는 계속 실행됩니다.
스레드가 새 소켓 타임 아웃까지 실행되도록 할 수는 있지만 매우 좋지 않다고 생각합니다.