ホームページ > バックエンド開発 > Golang > Go で期間を整数で正しく乗算する方法は?

Go で期間を整数で正しく乗算する方法は?

Linda Hamilton
リリース: 2024-12-17 04:38:24
オリジナル
531 人が閲覧しました

How to Correctly Multiply a Duration by an Integer in Go?

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

この問題は、同時ゴルーチンをテストする関数にランダムな遅延を導入しようとするときに発生します。次の行を導入すると、関数が返すまでに最大 1 秒かかることが予想されます:

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

ただし、このアプローチでは、int32 型と time.Duration 型の不一致を示すエラーがトリガーされます。この問題を解決する鍵は、int32 を time.Duration:

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

rand.Int31n(1000) から取得した int32 値を time.Duration に変換することによって、2 つの型を次のようにすることができます。これにより、関数が最大 1 秒のランダムな間隔でスリープできるようになります。

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

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