|
2
4
并不是每次都创建一个新线程。但是,如果使用ThreadPoolExecutor创建新线程,则可以指定ThreadFactory,它可以在每次创建线程时运行特定的代码块 那家工厂 。一个简单的示例(其中要运行的代码块打印线程的名称)如下所示:
|
|
|
3
3
这取决于您的用例,但您也可以使用Java字节 code instrumentation 然而,这通常用于测量、错误跟踪、分析等,因为它具有明显的性能影响。 这可以用 ASM ,他们有一个 tutorial 开始或看一下指南 Add Logging at Class Load Time with Java Instrumentation ,他们解释了如何修改Java代码,即每次输入和退出方法时都会添加代码。
在您的情况下,您只会对特殊方法执行此操作,或者
|
|
|
user107586 · 如何处理等待句柄不会导致无限循环? 1 年前 |
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 1 年前 |
|
|
BenjiFB · C#内存缓存:在一次操作中追加到列表? 1 年前 |
|
|
András Takács · Python多线程问题 1 年前 |
|
|
András Takács · Python多线程错误 1 年前 |