84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
文档上只有得到 当前运行的线程数量
我要获得正在运行的,我放进去的runable的实例 怎么得到
API层面应该没有这种支持. 有一个可能的办法, 覆写ThreadPoolExecutor的beforeExecute和afterExecute方法, 可以在 task执行前/后 去写log文件, 你的监测进程/线程去 轮询log得到当前在运行的task.
或者你可以用一些线程/进程间通讯的 方式(比如socket?), 可以得到更实时的结果.
的确可以覆盖 beforeExecute 和 afterExecute ,然后可以再开一个共享的 ConcurrentHashMap ,beforeExecute 里面把 Runnable 放进 HashMap,afterExecute 把 Runnable 从 HashMap 删除。
API层面应该没有这种支持. 有一个可能的办法, 覆写ThreadPoolExecutor的beforeExecute和afterExecute方法, 可以在 task执行前/后 去写log文件, 你的监测进程/线程去 轮询log得到当前在运行的task.
或者你可以用一些线程/进程间通讯的 方式(比如socket?), 可以得到更实时的结果.
的确可以覆盖 beforeExecute 和 afterExecute ,然后可以再开一个共享的 ConcurrentHashMap ,beforeExecute 里面把 Runnable 放进 HashMap,afterExecute 把 Runnable 从 HashMap 删除。