目玉機能と言っても良い並列指向プログラミングをかじるようになった辺りでした。プロセス、メッセージパッシング、エラー処理、etc。学び始めた人が少しでもこれら並列実行を構成する要素に惑わされないようにいくつかの要素を丁寧に説明していきたいと思います。Machine)で動作します。誰でもソースコードを覗くことができます。並列指向プログラミングが可能な言語であるという点が挙げられます。やって生成された中間言語を実行しているかという点を探ることが近道でしょう。並列性を実現するため実行にはいくつかの要素を取り入れています。プロセス、メールボックス、スケジューリングなど。この要素のいくつかを丁寧に説明することがこの記事の本題です。プロセスと同じような仕組みを取り入れています。プロセスという認識で間違いはありません。プロセスのようにメモリやストレージまで完全に分離されています。プロセスほど重くも複雑でもありません。1つのオブジェクトを作るくらいの感覚でプロセスを生成することができます。プロセスには次のようなデータが格納されています。IDステート(状態保存用)メールボックス(Queue)関数(メッセージリスナー)etc完全に分離されているので外部からステートの情報を操作することは出来ません。分離されたプロセス同士がプロセス間通信を行うための住所のようなものです。動作するプロセスの1つです。確認することができます。)他の要素であるメールボックスやメッセージリスナーなどの機能はプロセス間通信を行うための仕組みであり、各プロセスに実装されているものです。プロセスがどういうものなのかを少しは分かってもらえたと思います。次からはプロセス同士が通信するための仕組みを見ていきましょう。補足:ステートプロセスには状態管理のために確保された専用ストレージ(ステート)が存在しています。そのプロセスによってのみ変更可能で、基本的には関数とやり取りを行って状態を変化させていきます。ヒープ領域を確保しますが、初期のヒープ領域が小さめに設定されている理由は何十万ものプロセスを同時に実行するためだとかなんとか。