2010-11-10 5 views

ответ

5

Оба TimerTask и Thread выполняются асинхронно, но TimerTask планируется выполнить с фиксированными интервалами, а Thread - нет. Thread является довольно низкоуровневым примитивом для параллельного выполнения в общем виртуальном адресном пространстве, и он запускается всякий раз, когда он находится в очереди выполнения, и получает ход для запуска; TimerTask имеет право работать только с фиксированными интервалами, на которых он должен был запускаться.

3

TimerTask и Thread ведут себя одинаково независимо от того, запускаете ли вы их с помощью Groovy или Java.

TimerTask облегчает выполнение одноразовых или повторяющихся задач с использованием таймера. TimerTask действительно не имеет ничего общего с Threads, кроме того, что Timer будет выполнять эти задачи в фоновом потоке (хотя это можно рассматривать как деталь реализации класса Timer).

Thread, с другой стороны, является низкоуровневым классом для параллельного выполнения ничего в отдельном потоке и не предоставляет никаких функций синхронизации или планирования заданий.

Смежные вопросы