【问题标题】:scala specs don't exit when testing actors测试演员时,scala规范不会退出
【发布时间】:2010-12-17 10:26:19
【问题描述】:

我正在尝试使用 scala 规范测试一些演员。我在 IDEA 或 Maven(作为 junit)中运行测试,它没有退出。查看代码,我的测试完成了,但是一些内部线程(调度程序)正在徘徊。我怎样才能完成测试?

【问题讨论】:

    标签: unit-testing scala specs


    【解决方案1】:

    目前这只能通过强制关闭actor框架的调度程序来实现:

    scala.actors.Scheduler.impl.shutdown
    

    但是,调度程序的底层实现最近在补丁版本中发生了变化,因此这可能会有所不同,或者与您所使用的版本不完全兼容。在 2.7.7 中,默认调度程序似乎是 scala.actors.FJTaskScheduler2 的一个实例,这种方法应该适用,但是如果你最终得到一个 SingleThreadedScheduler 它不会,因为 shutdown 方法是无操作

    这仅在您的演员当时没有在等待react 时才有效

    【讨论】:

    • 你到底在做什么?诚然,我没有使用规范,但我对演员线程池线程没有终止没有任何问题
    猜你喜欢
    • 2010-10-03
    • 2012-02-06
    • 2015-04-05
    • 2020-07-09
    • 2021-02-11
    • 2014-03-09
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    相关资源
    最近更新 更多