0
안녕하세요 여러분, 스레드가 활동 중입니다. 작업을 실행할 때 스레드 상태를 알고 싶습니다. 스레드 상태를 알 수 있습니까? 예 :상태 스레드가 활성화되었는지 여부를 확인하십시오.
스레드가 실행 중이 아니면 지금 시작하십시오. 내가 작업을 실행할 때마다
는 스레드가 시작 :(
스레드 :들의 OnDestroy에서
public void callAsynchronousTask(Timer timer, final ToggleButton btnAtterraDecolla,
final ToggleButton btnRitardo, final ToggleButton btnImbarco)
{
final Handler handler = new Handler();
isTimerRunning = true;
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
try {
tTask aTask = new tTask(); //THIS IS ASYNCTASK
if(btnAtterraDecolla.isChecked())
LOL(1,AoP,btnAtterraDecolla);
if(btnRitardo.isChecked())
LOL(2,AoP,btnRitardo);
if(btnImbarco.isChecked())
LOL(3,AoP,btnImbarco);
aTask.execute();
} catch (Exception e) {
// TODO Auto-generated catch block
}
}
});
}
};
timer.schedule(doAsynchronousTask, 0, TEMPO_ESECUZIONE_THREAD);/
}
()
@Override
public void onDestroy() {
stopUpdates(btnAtterraDecolla,btnRitardo,btnImbarco);
super.onDestroy();
}
private void stopUpdates(ToggleButton btnAtterraDecolla,ToggleButton btnRitardo,ToggleButton btnImbarco) {
if(!btnAtterraDecolla.isChecked() && !btnRitardo.isChecked() && !btnImbarco.isChecked()){
if (isTimerRunning) {
timer.cancel();
timer.purge();
timer = null;
isTimerRunning = false;
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
....callAsynchronousTask(...)
그리고 여기 난 단지 인 btn1 경우 스레드를 중지하려면, btn2, btn3이 선택되지 않았습니다.
이 문제를 해결할 수있는 방법이 있습니까? 미리 감사드립니다!
당신이 나 예 수 미안 해요 ... 이해가 안 돼요? – user3671540
미안 해요 타이머입니다 ... 타이머 상태 확인 ... 켜기 또는 끄기 – user3671540