2

scala 仕様を使用していくつかのアクターをテストしようとしています。IDEA または Maven (junit として) でテストを実行しましたが、終了しません。コードを見ると、テストは終了していますが、いくつかの内部スレッド (スケジューラ) がぶら下がっています。どうすればテストを終了できますか?

4

1 に答える 1

1

現在、これはアクター フレームワークのスケジューラを強制的にシャットダウンすることによってのみ可能です。

scala.actors.Scheduler.impl.shutdown

ただし、スケジューラの基本的な実装は最近のパッチリリースで変更されているため、これは異なるか、使用しているバージョンではまったく機能しない可能性があります. 2.7.7 では、デフォルトのスケジューラはscala.actors.FJTaskScheduler2このアプローチが機能するインスタンスのように見えますが、最終的に aになったSingleThreadedScheduler場合、shutdownメソッドはノーオペレーションであるため機能しません。

reactこれは、アクターがその時点で待機していない場合にのみ機能します

于 2009-11-17T14:56:33.390 に答える