如何使用ASM设置线程上下文的信息?

时间:2016-09-07 20:57:47

标签: bytecode java-bytecode-asm

每次从线程池创建/挑选新线程时,我希望能够设置一些关于它的上下文信息。

我很感激有关使用ASM进行此操作的最佳方法的准则。

谢谢, Nadav

1 个答案:

答案 0 :(得分:0)

这要求您检测启动线程的方法或线程池触发新任务时遍历的方法。这使得这个方向前进:

  1. 您可以使用Thread::start方法来设置Thread的此类值。
  2. 您可以使用ThreadPoolExecutor::beforeExecute方法设置Thread的{​​{1}}状态。对于通用ThreadPoolExecutor,无法执行此操作,因为它们不一定需要由Executor支持。