為了使qt 能保證只建立乙個例項來進行, 對windows和linux分別採取了全域性互斥變數和檔案鎖的方法。
q_os_win32巨集用來表示編譯執行的目標平台是windows,q_os_linux則標示目標為linux
[cpp]view plain
copy
#if defined q_os_win32 //for win
#include
bool checkonly()
else
return true;
} #endif
#if defined q_os_linux //for linux
#include
#include
#include
#include
bool checkonly()
//給檔案加鎖
if (flock == -1)
//程式退出後,檔案自動解鎖
return true;
} #endif
int main(int argc, char *ar**)
QT防止程式啟動兩次的方法
為了使qt 能保證只建立乙個例項來進行,對windows和linux分別採取了全域性互斥變數和檔案鎖的方法。q os win32巨集用來表示編譯執行的目標平台是windows,q os linux則標示目標為linux cpp view plain copy if defined q os win3...
兩次fork防止殭屍程序
1 何謂殭屍程序?在linux系統中,乙個已經終止但父程序尚未對其進行善後處理 釋放子程序相關資訊占用的資源 的子程序叫做殭屍程序 子程序結束時,父程序呼叫pid t wait int statloc 或者pid t waitpid pid t pid,int statloc,int options...
Tomcat 啟動兩次的問題
1 存在某個應用 hello 3 tomcat的server.xml部分配置資訊如下 這麼做的目的就是為了將hello應用設為根,訪問ip時就直接訪問該應用 4 hello下有乙個 servlet 目的是為了系統在啟動時執行某些初始化的操作 該servlet裡存在init 方法,目前該方法裡只列印 ...