ScheduledExecutorService
/Timer
/Handler
の長所と短所は何ですか? Timer
の代わりにAndroidで理解できるように、Handler
を使用する必要がありますが、ScheduledExecutorService
はどうですか?ScheduledExecutorServiceとTimer v Handler
私がHandler
とScheduledExecutorService
を理解しているのは、相対的な時間だけです。
ScheduledExecutorService
/Timer
/Handler
の長所と短所は何ですか? Timer
の代わりにAndroidで理解できるように、Handler
を使用する必要がありますが、ScheduledExecutorService
はどうですか?ScheduledExecutorServiceとTimer v Handler
私がHandler
とScheduledExecutorService
を理解しているのは、相対的な時間だけです。
これら3つすべてを使用して、異なる(たとえばメイン以外の)スレッドでタスクを実行することができます。 Handlerでは、メッセージを渡すメッセージパターンを使用してスレッド間で安全に通信できます。それはあなたがタイミング/遅延/等をするのを許可しません。
ScheduledExecutorServiceは非常に一般的なスレッド管理ソリューションです。ワーカースレッドに特定の番号で初期化し、作業単位を与えます。仕事単位を遅らせたり、時間をかけたり、繰り返したりすることができます。
Timerクラスには、1回限りの1スレッド使用のScheduledExecutorServiceに似たシンプルなAPIがあります。公式のAPIでは、このクラスを使用せず、独自のScheduledExecutorをロールすることを提案しています。
あなたはハンドラを使用することができます#postDelayed(Runnable、間隔) – siliconeagle
http://stackoverflow.com/questions/2333680/android-schedule-action – assylias
TimerとScheduledExecutorの主な違い:後者は(スレッドプール経由で)複数のスレッドを使用し、次のタスクを遅らせるリスクを排除できます一つは:http://stackoverflow.com/questions/409932/java-timer-vs-executorservice – assylias
これは良い説明を表示します。http://stackoverflow.com/a/6558821/1016544 –