Scala Actor 的线程监控
-
06-07-2019 - |
题
有没有办法监视有多少线程实际上处于活动状态并正在运行我的 scala actor?
解决方案
正确执行此操作的唯一方法是注入您自己的 执行人 对于 actor 子系统,默认情况下,actor 线程没有 actor 或 scala 特定的名称(它们可能只是被称为 Thread-N
或者 pool-N-thread-M
取决于您使用的 Scala 版本。
菲利普·哈勒 已发出指示 使用您自己的执行器,如果您愿意,您可以在其中监视线程的使用情况,或者至少命名如此创建的线程。如果您覆盖线程命名,则可以使用标准 Java 系统 MBean(即 线程MXBean)以编程方式(或通过 JConsole/JVisualVM)监视线程。
请注意,您可以 控制 使用系统属性的默认机制:
actors.minPoolSize
actors.maxPoolSize
actors.corePoolSize
其他提示
您可以尝试 VisualVM 工具(可从Sun免费获得)。除此之外,它还可以监视正在运行的JVM中的线程。
不隶属于 StackOverflow