【发布时间】:2011-02-07 18:28:29
【问题描述】:
我已经打开了五个notepad.exe。现在我想知道与每个 notepad.exe 关联的所有进程 ID。
我知道我可以通过以下方式检索记事本进程列表:
Process[] 进程 = Process.GetProcessesByName("notepad");
但现在我想要使用 LINQ 的那些记事本实例的进程 ID 的字符串 []。我怎么做?我知道我可以创建 string[] 并使用 foreach 循环填充 string[] 但我想知道使用 LINQ。
【问题讨论】:
-
字符串类型的数据是邪恶的。
-
@Snowbear:虽然我大体上同意(我赞成您的评论),但我认为将 PID 作为字符串并没有什么错误(尽管事实上它们已经以整数形式提供给您,并且内存消耗)。即使它们用数字表示,它们也不能用于任何类型的数值计算。它们是标识符,字符串很适合这个角色。
-
@Martinho, Process.GetProcessById(int id) msdn.microsoft.com/en-us/library/76fkb36k.aspx?