オブジェクトプールを管理するためにscalaで推奨される方法は何ですか?
シングルスレッドで大規模なオブジェクトを作成および削除する必要があります (同期の必要はありません)。C++ では、静的オブジェクトの配列を使用しました。
scalaでそれに対処するための慣用的で効果的な方法は何ですか?
オブジェクトプールを管理するためにscalaで推奨される方法は何ですか?
シングルスレッドで大規模なオブジェクトを作成および削除する必要があります (同期の必要はありません)。C++ では、静的オブジェクトの配列を使用しました。
scalaでそれに対処するための慣用的で効果的な方法は何ですか?
アクターでラップします。よく知らない場合は、Akka をチェックしてください: http://doc.akka.io/docs/akka/2.0.3/scala/actors.html
これはかなり良い例です: https://github.com/derekjw/fyrie-redis/blob/master/src/main/scala/net/fyrie/redis/ConnectionPool.scala
アクター モデルでは、アクターが着信メッセージを 1 つずつ処理するため、シングル スレッド アクセスを保証できます。これにより、アクター内の非常に単純なコードと非常に単純な API が作成されます。