如何使用bytebuddy拦截Java中的“同步”代码块?

问题描述 投票:0回答:1

有一个同步代码块,如下所示:

public class Counter {
  int count;  

  public void increment(){
    synchronized(this){
      this.count ++;   
    }   
  }
}

我知道如何使用bytebuddy拦截仪器方法。 bytebuddy也可以拦截同步代码块吗?

我的最终目标是在代码块的开头或结尾注入我自己的代码。

java byte-buddy
1个回答
0
投票

Byte Buddy中没有API来更改方法中的代码;但是,所有这些操作都可以通过使用ASM来实现,这是由Byte Buddy通过使用可在其API中注册的AsmClassVisitorWrapper公开的。

© www.soinside.com 2019 - 2024. All rights reserved.