main(){
・・・
TM tm = new TM();
tm.start();
・・・
if(x == 1){
//tm.stop();
tm.interrpt();
}
}

class TM extends Thread{
 public void run(){
try{
 Thread.sleep(100000);
    a();
}catch(InterruptedException e){}
}

これで条件成立の場合、破棄されてa()が実行されることはないのでしょうか?