2
我花了一些時間學習使用Dtrace和Ruby ..然後在Ruby core 2.0中找到了新的TracePoint類。 TracePoint是否在dtrace用來監控ruby執行的封面下使用相同的探針?Ruby 2.0中的新Tracepoint API是否使用dtrace使用的相同探針?
我花了一些時間學習使用Dtrace和Ruby ..然後在Ruby core 2.0中找到了新的TracePoint類。 TracePoint是否在dtrace用來監控ruby執行的封面下使用相同的探針?Ruby 2.0中的新Tracepoint API是否使用dtrace使用的相同探針?
不,它們是在ruby源代碼中使用一組單獨的C宏實現的。但是,大多數存在DTrace探針的地方也會調用EXEC_EVENT_HOOK(這是TracePoint使用的)。 DTrace探測器的低級別字符串和數組分配沒有相應的TracePoint掛鉤。還有一個地方沒有DTrace探測器(線程切換)調用EXEC_EVENT_HOOK。
請記住,TracePoint允許您執行任意的ruby。這使您可以更靈活地使用TracePoint,但代價是比使用DTrace時具有更大的探測效果。