の関係Thread.sleep()とTimeUnit.SECONDS.sleep()
Relations Thread Sleep
java.lang.Thread
java.util.concurrent.TimeUnit
(1)Thread.sleep()およびTimeUnit.SECONDS.sleep()がスレッド一時停止操作を実行しました
(2)TimeUnitメンバーの列挙メソッドは、Thread.sleep()の代わりに一般的に使用される読みやすさを向上させます。
たとえば、3分間中断された同じスレッドを実現するには、次のようにします。
Thread.sleep(180000)またはThread.sleep(3 * 60 * 1000)//ミリ秒
TimeUnit.MINUTES.sleep(4)
(3)TimeUnit.SECONDS.sleep()ソースコードを表示するか、Thread.sleepメソッドをパッケージ化して、時間単位の変換と検証だけでなく、同じことを実現します。
(4)Thread.sleep()は静的メソッドであり、スレッドを一時停止してもロックが解放されないため、InterruptedExceptionが例外としてスローされます(スレッドが現在のスレッドに割り込んだ場合)。
TimeUnit.sleep()は内部的にThread.sleep()と呼ばれ、InterruptExceptionもスローします。
(5)TimeUnitの一般的な粒度
TimeUnit.DAYSデイツール
ツールの場合はTimeUnit.HOURS
TimeUnit.MINUTESポイントツール
TimeUnit.SECONDSの2番目のツール
TimeUnit.MILLISECONDSミリ秒ツール
TimeUnit.SECONDS.sleep(5)// 5秒の遅延
(6)TimeUnit時間粒度変換
public
long
toMillis(
long
d)
// ms converted to
public
long
toSeconds(
long
d)
// converted to seconds
public
long
toMinutes(
long
d)
// converted into minutes
public
long
toHours(
long
d)
// converted to hours
public
long
toDays(
long
d)
// convert day
例えば:
TimeUnit.SECONDS.toMillis(1)//ミリ秒数の1秒
TimeUnit.SECONDS.toMinutes(60)//分数の60秒
TimeUnit.SECONDS.sleep(5)//スレッドは5秒間スリープします
TimeUnit.SECONDS.convert(1、TimeUnit.MINUTES)// 1分で秒を変換します
参照:
Thread.sleep()およびTimeUnit.SECONDS.sleep() : https://www.cnblogs.com/jiuya/p/10832507.html
TimeUnit.sleep()の代わりにTimeUnitのJava同時実行性: https://blog.csdn.net/xiaojin21cen/article/details/79479788