0

私はパス プロファイリング ツールを作成しており、jdt Astparser を使用してソース コードを変更しています。元の各行の後にいくつかのコードを追加し、それらをアトミック操作にして、ソース コードの動作を変更しない場合。このように:元のソースコード:

int a = 0;
int b = 0;
a = b;

操作後

synchronized (lock) {
int a = 0;  //original code
//my code
//....
//end
}
synchronized (lock) {
int b = 0;  //original code
//my code
//....
//end
}
synchronized (lock) {
a = b;  //original code
//my code
//....
//end
}

ただし、変数のスコープが変更され、変数 a と b がグローバルではなくなり、コードをコンパイルできなくなります。

その後に挿入した変数宣言とコードを組み合わせて、アトミック操作にし、変数スコープを変更しないようにする方法はありますか?

...そして私の英語でごめんなさい:)

4

1 に答える 1