【发布时间】:2014-07-30 23:07:11
【问题描述】:
如何检查另一个程序实例是否已经在 UNIX 系统下运行?如果是这样,exit()。
当进程开始时,我已经使用了file 和pid。然后我检查pid 它是否存在。但是有时程序会因意外行为而运行,并且我有大量程序正在运行。
【问题讨论】:
-
如果您希望不公开您的代码,很难说出实际出了什么问题。
-
@πάνταῥεῖ 似乎在新的 pid 写入文件之前和另一个实例读取文件并做出决定是否运行并写入其他 pid 之前有一些间隔。所以,并发开始。我想尝试一些其他算法。
-
'意外的海狸'多么可爱的“blooper”:-D。像“哎呀!未刮胡子:-/”之类的东西......
-
标题中的语言无需提及;这就是标签的用途。无论如何,语言的名称是 C++,而不是 cpp;名称“cpp”通常指的是 C 预处理器。