ホームページ > バックエンド開発 > Golang > Go の `time.Sleep()` 関数で継続時間を整数で正しく乗算する方法は?

Go の `time.Sleep()` 関数で継続時間を整数で正しく乗算する方法は?

Mary-Kate Olsen
リリース: 2024-12-05 07:21:11
オリジナル
842 人が閲覧しました

How to Correctly Multiply a Duration by an Integer in Go's `time.Sleep()` Function?

Go での整数による期間の乗算

Go 関数で遅延を作成するために、時間を利用しようとした可能性があります。 rand.Int31n を使用して生成されたランダムな期間。ただし、型が一致しないというエラーが発生した場合は、次の方法で解決します。

コード内で次のように記述しました。

time.Sleep(rand.Int31n(1000) * time.Millisecond)
ログイン後にコピー

この行は、 int32 (rand.Int31n によって返される) を time.Duration (time.Milli Second 定数) で表します。ただし、これらの型には互換性がないため、エラーが発生します。

これを修正するには、乗算する前に int32 を time.Duration に変換する必要があります。修正されたコードは次のとおりです。

time.Sleep(time.Duration(rand.Int31n(1000)) * time.Millisecond)
ログイン後にコピー

int32 を time.Duration に変換することで、互換性のある型間で乗算が確実に実行され、エラーが解決されます。これにより、関数がランダムな期間、最大 1 秒間一時停止できるようになります。

以上がGo の `time.Sleep()` 関数で継続時間を整数で正しく乗算する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート