の関係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