python - 检查进程是否在 Windows 上运行?

标签 python windows python-2.7

我正在尝试创建一个 python 脚本,稍后我将作为服务运行该脚本。现在我只想在 iTunes 运行时运行代码的特定部分。我从一些研究中了解到,轮询整个命令列表然后搜索该列表的应用程序是昂贵的。

我发现基于 UNIX 的操作系统上的进程会创建一个锁定文件来通知程序当前正在运行,此时我们可以使用 os.stat(location_of_file) 来检查是否文件存在以确定程序是否正在运行。

是否有类似的在 Windows 上创建的锁定文件?

如果不是,Python 中我们可以通过哪些各种方式来确定进程是否正在运行?

我正在使用 python 2.7 和 iTunes COM 接口(interface)。

最佳答案

您不能依赖 Linux 或 Windows 中的锁定文件。我会硬着头皮遍历所有正在运行的程序。我真的不相信它会像你想象的那样“昂贵”。 psutil是一个优秀的跨平台python模块电缆,用于枚举系统上所有正在运行的程序。

import psutil    
"someProgram" in (p.name() for p in psutil.process_iter())

关于python - 检查进程是否在 Windows 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7787120/

相关文章:

python - 为 AWS Lambda 部署压缩虚拟环境时,我可以遗漏什么?

windows - 为什么我不能终止这个 while 循环?

c - 为什么 linux 编译的程序不能在 Windows 上运行

python - 在正则表达式匹配后获取部分数据以替换原始字符串

python - 如何在 Python 中将包含几行的字符串转换为每个单元格包含一行的列表?

python - 我怎样才能在 Pandas 中按 10 秒分组

python - VSCode 中 jupyter notebook 中的交互式 python 3d 绘图

c# - MDI 子窗体与 MDI 父窗体控件重叠

Python - 无法启动新线程

python - 使用 pythons strftime 显示日期,如 "May 5th"?