我使用Process.GetProcesses()
获取当前正在运行的进程列表,这在大多数计算机上都没有性能问题。
但是,当我部署在运行了很长时间的服务器上(已运行147天,新的PID已达百万),使用Process.GetProcesses()
处理时间最多100毫秒,正常{{ 1}}处理时间在几毫秒之内。这会影响系统性能。
Process.GetProcesses()
谁能告诉我如何解决这个问题?
答案 0 :(得分:0)
我在MSDN论坛中找到了另一个解决方案。
也许获取Process对象,然后使用WaitForExit。或者将EnableRaisingEvents设置为true并处理Exited事件。那你就不需要定期循环了。