オライリーの『Erlangプログラミング』は各章の最後にエクササイズがあって、
そのエクササイズの4-2を解いてみました。
内容
課題はN個のプロセスがリング上に形成されていて、
メッセージをM個伝達し、
M個伝達し終わったらプロセスを終了するというものです。
実行結果は下の通り。
なんか、もう少しプログラムの行数を減らせそうな気がする。
やってて覚えたこと
- atomにプロセスをregister/2関数にて割り当てるとき、既に他のatomにプロセスが割り当てられている場合、エラーが発生する。
- つまりひとつのプロセスはひとつのatomにしかregister/2関数で割り当てられない
- whereis/1関数の戻り値はプロセスID
- プロセスを強制終了する場合は、exit/2関数を用いる。引数はPid、終了する原因(atomなど)
うん
Erlangって型ないですねー
0 件のコメント:
コメントを投稿