1

AKKA アクターで長時間実行されるタスクを実装する最良の方法は何ですか?

長時間実行されるタスクの例: 1) ファイル IO 2) マルチメディア (ビデオ/オーディオ) IO

アクターにマイクから録音させたり、サウンド/曲をスピーカーに再生させたりすると、スレッドをブロックする必要があります。しかし、AKKA アクターについて理解している限り、このブロックされたアクターは、外部からのメッセージには反応しません。したがって、実行時間の長いタスクを中断 (または一時停止) することはできません。

私の目標を達成するための標準的な方法はありますか? それとも、この特定の種類のタスクに対してアクターは間違ったモデルですか?

4

1 に答える 1

1

新しい Akka IO (2.2.0 で登場、現在は RC1 で提供) を使用して、アクタにノンブロッキングのメッセージ駆動型 TCP および UDP を提供します。

http://doc.akka.io/docs/akka/2.2.0-RC1/scala/index-network.html

一般的に行うことは、次のチャンクをブロックするのではなく、チャンクに入れ、一度に 1 つのチャンクを処理することです。

于 2013-06-26T17:35:04.397 に答える