Why is the Process class in the Diagnostics namespace?

核能气质少年 提交于 2019-12-05 11:21:27

问题


Why is the Process class part of the Diagnostics namespace?

This is a part of design of the BCL that kept me wondering for some time now. I find it kind of counter-intuitive, I fail to see the connection between Process and for instance the Debug and Trace classes.


回答1:


The process class doesn't just represent a single process. It has a ton of information about the running processes on the computer. This info can be used to find problems or just get general information about your system state.

you can see the diagnostics namespace description here: http://msdn.microsoft.com/en-us/library/system.diagnostics.aspx

and the process class description here: http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx




回答2:


Well, according to the documentation, "The System.Diagnostics namespace provides classes that allow you to interact with system processes, event logs, and performance counters." So I guess by definition it fits. :-)

But yes, it does seem a bit like an overloading of terms by putting it next to things a bit more obviously diagnostics-related (tracing, performance counters).

Still, I would say that the Process class is as much about monitoring running processes as it is about starting new ones. Monitoring is generally accepted as a diagnostic activity. Furthermore, it might be less intuitive to most programmers if the framework had split up functionality pertaining to the same item in separate namespaces. So I can see the logic of including it here.



来源:https://stackoverflow.com/questions/1551809/why-is-the-process-class-in-the-diagnostics-namespace

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!