我在java应用程序中使用弹簧状态机。要在状态之间移动,我们应该使用一些事件(称为Timer事件)。似乎有一个线程负责管理定时器的设置,以确定何时会发生状态之间的移动(如果在我们所在的状态下没有任何事情发生,状态机将根据定时器来决定)。在为转换添加一个定时器事件(使用Papyrus来定义状态机)之后,即使在main方法完成后,我也会看到剩余的活动线程。我有两个问题;首先,这个线程是什么(我的意思是,这个线程和管理定时器的线程是一样的),第二,我如何在工作结束时终止线程?使用定时器时弹簧状态机附加线程
0
A
回答
0
定时器计划通过Spring TaskScheduler
和基于注解的JavaConfig默认实例ConcurrentTaskScheduler
创建。这在StateMachineCommonConfiguration
如果要修改这个你可以做提供自己TaskScheduler
或者通过与其他使用机器配置的方法来设置它的名字taskScheduler
覆盖豆。默认ConcurrentTaskScheduler
确实是一个基于单线程执行程序,这是你看到的。这些在Spring Framework文档中有更多的讨论。
相关问题
- 1. 弹簧状态机 - 管理长时间运行的进程
- 2. 使用连接工厂时总是执行弹簧状态机超时
- 3. 使用弹簧启动执行器关闭mongo时的应用状态关闭
- 4. 状态机定时器自我转换
- 5. 使用状态和定时器处理
- 6. 何时您赞成在线性工作流程中使用状态机器
- 7. 在同一时间使用两个弹簧启动应用程序时退出一个弹簧应用程序
- 8. 多线程弹簧启动控制器
- 9. 弹簧控制器和线程
- 10. 如何获得弹簧形状的线
- 11. 弹簧开机/健康状态最高状态是什么:UP表示
- 12. 定时器线程?
- 13. 当一个定时器线程进入睡眠状态时会发生什么
- 14. HTTP状态404 - /弹簧MVC /登录
- 15. Log4j2使用弹簧时未发现?
- 16. NonUniqueResultException使用弹簧JPA时抛出 “findtop”
- 17. 使用弹簧时的问题TransactionSynchronizationManager
- 18. 弹簧状态机越来越bean创建例外
- 19. 弹簧状态机的任务执行不点火
- 20. 如何使用定时器多线程
- 21. android手机锁定时的WIFI状态
- 22. 使用弹簧转换器
- 23. 在web应用中的弹簧线程
- 24. 加速线程和定时器,C++
- 25. Java util定时器 - 线程添加
- 26. 错误(http状态500)当我使用弹簧瓷砖
- 27. 弹簧@Scheduled计时器精度
- 28. Lamport时钟和状态机
- 29. 弹簧线一个静态类
- 30. 动态构建弹簧集成路线
如果我使用默认的ConcurrentTaskScheduler,我将为每个状态机实例或一个线程安排一个线程来调度所有状态机实例? – Amir