调用Process.GetCurrentProcess();可以得到当前进程,返回的是一个进程对象。需要引用的命名空间为:System.Diagnostics
如果只想看当前进程的Id,可以这样写:
Console.WriteLine($"Process.Currentprocess = ({Process.GetCurrentProcess().Id})");
调用Process.GetProcesses();可以得到当前电脑运行的所有进程,返回的是一个Process数组,里面每个元素都是一个Process对象,如果想打印所有进程的进程名和Id,可以这样写:
Process[] processes = Process.GetProcesses(); foreach (Process process in processes) { Console.WriteLine($"ProcessName = ({process.ProcessName}), Id = {process.Id}"); }
为了验证程序的正确性,按“CTRL + ALT + DEL”调出任务管理器,在详细信息一栏中可以看到进程的PID。为了方便查看,将进程进行一下筛选,完整代码如下:
1 using System; 2 using System.Diagnostics; 3 4 namespace Test 5 { 6 class Test 7 { 8 static void Main(string[] args) 9 { 10 Process[] processes = Process.GetProcesses(); 11 foreach (Process process in processes) 12 { 13 if (process.ProcessName.Contains("360")) 14 { 15 Console.WriteLine($"ProcessName = ({process.ProcessName}), Id = {process.Id}"); 16 } 17 } 18 Console.ReadKey(); 19 } 20 } 21 }
执行结果如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
2021-01-24 2、fork函数与进程ID
2019-01-24 九、编写led驱动
2019-01-24 八、启动linux内核并修改开机logo
2019-01-24 七、在U-boot中让LCD显示图片
2019-01-24 六、在U-boot中让LCD填充纯色