0

我创建了一个具有多个线程(大约 4-5 个线程)的 Windows 服务。在此服务线程中创建于特定的内部并中止。创建线程后,它会执行一些 I/O 操作和数据库操作。

我有一个用于此服务的 GUI,以提供此服务所需的配置。在这个 GUI 中,我想再添加一个功能,向我展示 Windows 服务相对于所有线程的性能。我想显示 CPU 利用率(如果多核处理器可用而不是所有处理器利用率)及其内存利用率。

如果您查看 Windows 任务管理器,它会显示 CPU(基于内核)+ 内存利用率,我想构建相同的东西,但仅适用于我的 Windows 服务运行的线程。

任何人都可以帮助我如何获得每个线程的 CPU% 和内存利用率吗?

4

1 回答 1

0

我认为您无法获得线程的 CPU 和内存利用率。相反,您可以获得相同的服务。

我的问题是,您为什么需要构建自己的功能,而 SysInternals Process explorer 会为您提供更多详细信息?有什么具体需求吗?

如果您需要监控线程活动,您最好使用 Log4net 或其他日志记录工具记录一些信息。这将使您了解线程及其正在做什么。

更具体地说,您可以使用 TelNetAppender 发布日志,这些日志可以由您的应用程序接收。这将帮助您实时查看流程。

于 2013-11-05T06:15:50.940 回答