2021-01-01から1年間の記事一覧

[Go] 並行処理を用いたモンテカルロ法

Go言語による並行処理の第4章4.6パイプラインをもとにモンテカルロ法で円周率を計算する。 www.amazon.co.jp 乱数による円周率の計算 以下の積分にモンテカルロ法を適用し、円周率をモンテカルロ法で求める。 $$ \int_{0}^{1} \frac{4}{ 1 + x^{2} } dx = \p…

[Go] Go言語による並行処理 4章メモ1

Go言語による並行処理の第4章をまとめていく。 www.amazon.co.jp 4.1 拘束 並行プロセスを安全にする方法として、 データをイミュータブルにする(作成後に変更できないようにする) データを拘束によって保護する などが挙げられる。 拘束について、 アドホッ…

[Go] Go言語による並行処理 3章メモ2

Go言語による並行処理の第3章をまとめていく。 www.amazon.co.jp 3.3 チャネル 宣言、初期化 値をchan型の変数に渡し、プログラムの別の場所でその値をチャネルから読み取る。 以下で宣言、初期化ができる。 var dataStream chan interface{} dataStream = m…

[Go] Go言語による並行処理 3章メモ1

Go言語による並行処理の第3章をまとめていく。 www.amazon.co.jp 3.1 ゴルーチン 関数呼び出しの前にgoキーワードを置くことでゴルーチンを起動できる。 func main() { go f() ... } func f { ... } 3.2 syncパッケージ 3.2.1 WaitGroup Addでカウンターを1…

[Python] Import cyclesを解消する

はじめに テスト駆動開発のjavaで書かれた部分をpythonで実装しているとき、 ImportError: cannot import name 'Money' from partially initialized module 'moneys.money' (most likely due to a circular import) というエラーに遭遇しました。 これは循環…