2012-06-04 33 views
1

我使用較新的System.Diagnostics.PerformanceData一組api寫入我的計數器,並且想要同時從多個進程增加/減少一個計數器。從多個進程寫入相同的性能計數器

我試着調整以各種方式CounterSetInstanceType沒有成功:

如果我使用多或MultipleAggregate我總是看到在perfmon的一個實例,但真正爲每個進程一個獨立的櫃檯,它們將覆蓋彼此。單一的計數器類型會發生同樣的情況。

當我嘗試gloablAggregate計數器類型性能監視器似乎沒有讀取值。

回答

1

回答我的問題:

如這裏記載:http://msdn.microsoft.com/en-us/library/windows/desktop/ee781345%28v=vs.90%29.aspx

你需要指定如何聚合清單文件內的計數器(通過設置爲每個計數器綜合屬性)。

看來不這樣做會導致計數器只停留在0/undefined。

在globalAggregate這種情況下完美的作品。

在multipleAggregate的情況下,這僅對自動創建的_Total實例自動創建(作爲將其定義爲multipleAggregate)的結果。所有其他實例仍保留舊的行爲。

似乎還有一個'MultipleInstanceAggregate'計數器類型,但據我所知它不受清單模式的支持。 (見:http://msdn.microsoft.com/en-us/library/system.diagnostics.performancedata.countersetinstancetype

相關問題