程序只執行乙個例項

2021-06-09 06:15:11 字數 455 閱讀 9837

守護程序往往需要設定使其只執行乙個例項,這裡展示檔案鎖的方式實現:

1.使用fcntl()函式設定檔案鎖

#include #include #include #include #include #include #include int main()

else

pause();

return 0;

}

2.使用flock()設定鎖:

#include #include #include #include #include #include int main()

else

pause();

return 0;

}

特點是設定鎖的時候不要設定阻塞,如果再次執行程式時會返回錯誤。

linux 只啟動乙個程序例項

很多應用程式都只應該啟動乙個執行例項,特別是設計檔案io操作的程式,如果誤啟動了多個例項,可能會導致混亂的io,進而導致檔案寫亂。常見的做法 1.生成pid檔案 這種做法最常見了,應用於大多數的linux程式,如apache httpd,mysql。思路是配置乙個pid檔案,當程式啟動時,對pid檔...

C winform 只執行乙個例項視窗

using system using system.windows.forms using system.diagnostics using system.runtime.interopservices using system.reflection namespace emailoperation...

只執行乙個例項的方法

在vc 中程式設計中,只執行乙個例項的方法主要有兩類 1 遍歷當前的所有視窗,查詢相同的例項。為了便於查詢,一般要事先設乙個查詢標誌。2 利用系統提供的互斥物件或信標,直接讓系統抑制重複的例項。在發現重複執行時,一般還有乙個任務,就是啟用已經存在的視窗。一 第一類方法的實現 下面是乙個具體的例子,下...