並列計算を使って、テキストに含まれる文字の出現頻度を数えましょう。
並列処理とは、順番に実行することもできる物事を、並行して行うことです。よくある例が、文字の出現頻度を数えることです。並列処理を活用して、テキストの配列に含まれる各文字の出現頻度の合計を計算しましょう。
Crystalで並行・並列プログラムを書くには、こちらのリソースが役立つかもしれません。Crystal 1.19では、新しいSyncライブラリーが追加され、高性能な並行・並列プログラムをより簡単に作るためのいくつかのプリミティブが導入されました。
この演習のオンライン環境は、他のほとんどの演習とは少し異なります。 Crystalをシングルスレッドのバイナリーにコンパイルするのではなく、この演習ではCrystalの実験的なマルチスレッド機能を使います。 そのため、環境によっては実行時の動作が想定と異なることがあります。
ローカルで開発する場合は、Crystal 1.19.0以降をインストールし、コードをコンパイルまたは実行するときに-Dpreview_mtフラグを付けて、マルチスレッドのサポートを有効にすることをおすすめします。