rand.Seed()はdeprecated(Go lang)

VScodeでGo 1.20以降の環境では、rand.Seed()は使うなというwarningが出ます。

代わりに推奨されているのは、rand.NewSource()になります。

	rand.Seed(time.Now().UnixNano())
	rand.NewSource(time.Now().UnixNano())

理由は以下のポップアップメッセージですが、a dependency changes how much it consumes from …..の意味は理解できません。最後の一行を読むと、他のパッケージからもglobal random resourceにアクセスがあると期待したシーケンスで出力されなくなると読めるのでリソース(global random resource)を共有時の問題のようで、他のパッケージからアクセスできないrand.NewSource()を使えということなのでしょう。

stackoverflowのQAを見るとこの件がアップされていますね。

https://stackoverflow.com/questions/75597325/rand-seedseed-is-deprecated-how-to-use-newrandnewseed

 

admin