Java начать один фоновый поток за другим завершить
Я видел этот вопрос:как запустить один поток после завершения другого потока , но ответ на него мне не подходит.
У меня есть такой код Java для Android:
public void startTask(Runnable r)
{
running = true;
Log.i(tag, "-----------start.Runnable-----------");
Thread first = new Thread(r);
first.start();
Thread second = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
running = false;
}
});
}
первыйThread
принимает в качестве параметраRunnable
объект с какой-то сложной операцией, которую я обрабатываю в фоновом режиме. Итак, когда я вызываю метод:startTask () Я поставилбег = истина; предотвратить двойное выполнение задач. Но, кроме того, мне нужно сразу после завершения первого потока запустить второй поток, чтобы установитьбег = ложь; включить другие операции для выполнения.
Как я могу ждать полноты первого потока вторым, чтобы не заморозить основной поток ?? Спасибо!