2012-04-05 56 views
8

我想了解更多關於我的Erlang應用程序的 進程之間的工作分配。除此之外, 過程所執行的減少次數是我感興趣的事情之一。厄蘭過程減少計數

因此,我正在尋找一種方法來讀取退出時 進程的減少數量。雖然在進程仍在執行時獲取 這種信息是相當直接的,但在它們退出之前(或正好在它們退出之後)獲取它們是另一回事。我有 看遍了所有的文檔,特別是dbg:*函數, 不幸的是,無濟於事。主要是因爲無論我何時通知 關於一個流程的退出,關於它的任何事情012xx已經太晚了。

在進程退出之前更改整個應用程序的代碼以讀取這些值 是不可行的。除了潛入虛擬機代碼和儀器之外,還有其他方法可以做到嗎? ?

感謝

回答

1

我不認爲你可以得到reductions的過程,但你可以做一個erlang:trace/3runningtimestamp選項獲得基於時間的工作分配。那會讓你想到我想的。當然,你必須收集數據並做一些後處理或準時處理。

我也使用該選項procs到跟蹤,以獲得必要的元信息,即啓動,終止等

+0

好吧,我落得這樣做正是......可惜的是,走線/ 3 ,因此dbg:沒有這種詳細的選項。 – Francesquini 2012-04-17 15:09:42