2013-11-05 66 views
0

我已經創建了一個具有多個線程的窗口服務(約4-5個線程)。在這個服務線程創建在特定的內部和中止。一旦創建線程,它將執行一些I/O操作db操作。監視多個線程的性能

我有一個用於此服務的GUI來提供此服務所需的配置。在這個GUI中,我想添加一個更多的功能,它顯示了Windows服務相對於所有線程的性能。我想要顯示CPU利用率(如果多核處理器可用而不是所有處理器利用率)與其內存利用率。

如果你看看Windows任務管理器,它顯示CPU(每核心基礎)+內存利用率,我想建立同樣的事情,但只爲我的Windows服務運行的線程。

任何人都可以幫助我瞭解如何獲得每個線程的CPU%和內存利用率嗎?

+0

請參閱http://stackoverflow.com/q/1393006/56778和http://technet.microsoft.com/en-us/library/cc938601.aspx –

回答

0

我認爲你不能獲得線程的CPU和內存利用率。相反,您可以獲得相同的服務。

我的問題是,爲什麼你需要建立自己的功能,其中SysInternals進程資源管理器給你更多的細節?任何特定的需求?

如果您需要監視線程活動,則可以使用Log4net或其他記錄工具更好地記錄一些信息。這會讓你瞭解線程和他們在做什麼。

更具體地說,您可以使用TelNetAppender發佈日誌,這可以由您的應用程序接收。這將幫助您實時查看過程。