SystemTapプローブを使用してオーバーロードされたメソッドを区別するにはどうすればよいですか?SystemTapを使用してオーバーロードされたC++メソッドのプロファイリング
など。 .stpファイルで
class A {
// ...
void doFoo();
void doFoo(int a);
// ...
};
:
probe process("foobar").function("A::doFoo<NO ARGS>").return {
// do something
}
probe process("foobar").function("A::doFoo<USING INT>").return {
// do something different
}
は、それが.statement(@file:line)
を使用して価値があるではないですので、両方の方法が十分に複数の戻りポイントを有することができることを検討してください。
マングルされた関数名で試しましたか? – crazyjul
'ldd'によって返された変更された名前で何の効果もないと試しました。しかし、各コンパイラはそのマングリング推論について自由であるため、イベントは移植可能ではありません。 – milton