pitanje za Zaharija
imam problem kako da zaustavim ovaj thread:
public class PodserverEngine extends Thread{
public ServerSocket mySocket;
public PodserverMain main;
boolean kraj = false;
public Socket socket;
public PodserverEngine(PodserverMain main) {
this.main = main;
}
public void run(){
try{
mySocket = new ServerSocket(port);
while(!kraj){
socket = mySocket.accept();
new EngineThread(socket, this, 1, main).start();
}
}catch(Exception e){
handleException(e);
}
}
public void handleException(Exception e){};
public void initialize(){};
public void end()throws Exception{
mySocket.close();
socket.close();
kraj=true;
main.podserver = null;
}
}
kao sto se vidi pokusao sam da ga zaustavim postavljanjem pokazivaca na ovaj thread na null (to je ovo main.podserver=null u metodu end()) ali on i dalje radi jer mySocket.accept() je blokirajuci pa thread ne izlazi iz svog run metoda, cak ni posto zatvorim socket, bra ja tako mislim, nemogu ni da pokusam sa this.interrupt() jer ovo pali samo kad je thread uspavan (sleep()), dakle pitanje ima li jos neka fora da se thread prekine.
---------------------------------
Do you Yahoo!?
Friends. Fun. Try the all-new Yahoo! Messenger
public class PodserverEngine extends Thread{
public ServerSocket mySocket;
public PodserverMain main;
boolean kraj = false;
public Socket socket;
public PodserverEngine(PodserverMain main) {
this.main = main;
}
public void run(){
try{
mySocket = new ServerSocket(port);
while(!kraj){
socket = mySocket.accept();
new EngineThread(socket, this, 1, main).start();
}
}catch(Exception e){
handleException(e);
}
}
public void handleException(Exception e){};
public void initialize(){};
public void end()throws Exception{
mySocket.close();
socket.close();
kraj=true;
main.podserver = null;
}
}
kao sto se vidi pokusao sam da ga zaustavim postavljanjem pokazivaca na ovaj thread na null (to je ovo main.podserver=null u metodu end()) ali on i dalje radi jer mySocket.accept() je blokirajuci pa thread ne izlazi iz svog run metoda, cak ni posto zatvorim socket, bra ja tako mislim, nemogu ni da pokusam sa this.interrupt() jer ovo pali samo kad je thread uspavan (sleep()), dakle pitanje ima li jos neka fora da se thread prekine.
---------------------------------
Do you Yahoo!?
Friends. Fun. Try the all-new Yahoo! Messenger
- Follow-Ups:
- Re: pitanje za Zaharija
- From: Zaharije Radivojevic <zaki@galeb.etf.bg.ac.yu>
- Re: pitanje za Zaharija
Previous by date: pitanje za Zaharija
Next by date: Re: pitanje za Zaharija
Previous by thread: pitanje za Zaharija Next by thread: Re: pitanje za Zaharija
Previous by thread: pitanje za Zaharija Next by thread: Re: pitanje za Zaharija