【发布时间】:2010-12-17 10:26:19
【问题描述】:
我正在尝试使用 scala 规范测试一些演员。我在 IDEA 或 Maven(作为 junit)中运行测试,它没有退出。查看代码,我的测试完成了,但是一些内部线程(调度程序)正在徘徊。我怎样才能完成测试?
【问题讨论】:
标签: unit-testing scala specs
我正在尝试使用 scala 规范测试一些演员。我在 IDEA 或 Maven(作为 junit)中运行测试,它没有退出。查看代码,我的测试完成了,但是一些内部线程(调度程序)正在徘徊。我怎样才能完成测试?
【问题讨论】:
标签: unit-testing scala specs
目前这只能通过强制关闭actor框架的调度程序来实现:
scala.actors.Scheduler.impl.shutdown
但是,调度程序的底层实现最近在补丁版本中发生了变化,因此这可能会有所不同,或者与您所使用的版本不完全兼容。在 2.7.7 中,默认调度程序似乎是 scala.actors.FJTaskScheduler2 的一个实例,这种方法应该适用,但是如果你最终得到一个 SingleThreadedScheduler 它不会,因为 shutdown 方法是无操作
这仅在您的演员当时没有在等待react 时才有效
【讨论】: