【发布时间】:2012-12-12 01:33:19
【问题描述】:
我正在使用此代码在 java 中获取ExecutorService:
this.exec = Executors.newSingleThreadExecutor();
现在我想知道它已经处理了多少工作,有多少在队列中(最重要的是!),以及基本上我能得到的所有信息。但是普通的ExecutorService 没有这个信息。但根据the answer in this question,我可以将其类型转换为ThreadPoolExecutor,因为这就是它返回的内容。嗯,这听起来很容易……但有一个问题。 我的机器没有返回ThreadPoolExecutor!
相反,我得到了一个java.util.concurrent.Executors$FinalizableDelegatedExecutorService,在尝试对其进行类型转换时,这是不可能的,因为该类不可见。
那么我怎样才能知道我的ExecutorService 的状态呢?
如果您非常好奇并想知道我使用我的ExecutorService 做什么(如果这很重要),请阅读我之前询问过的this question。它基本上是用于 SQL 语句的。
【问题讨论】:
标签: java multithreading executorservice