Q
進程啓動限制
0
A
回答
1
編寫一個臨時文件並將其用作鎖。
編輯:要回答評論:如果你在Unix系統上,寫一個文件/ tmp/my_application_lock_file。如果它已經存在,請用適當的消息停止您的程序。在文件創建者退出時,刪除它。
#include <sys/stat.h>
#include <errno.h>
#include <unistd.h>
#include <iostream>
#include <fstream>
int main (void)
{
struct stat file_info;
// test for lock file
if (stat("/tmp/my_application_lock", &file_info) == 0) {
std::cout << "My application is already running, will abort now..." << std::endl;
return -1;
} else {
// create lock file
std::ofstream out;
out.open("/tmp/my_application_lock");
if (!out) {
std::cout << "Could not create lock file!" << std::endl;
return -1;
}
out << "locked" << std::endl;
out.close();
// do some work
std::string s;
std::cin >> s;
// remove lock file
errno = 0;
if (unlink("/tmp/my_application_lock"))
std::cout << "Error: " << strerror(errno) << std::endl;
}
return 0;
}
2
相關問題
- 1. 限制由System.Diagnostics.Process啓動的進程
- 2. 多進程限制進程
- 3. 作爲限制用戶從提升腳本啓動進程
- 4. 如何限制C shell啓動的後臺進程?
- 5. 啓動進程
- 6. MySQL - 無限制啓動
- 7. 如何啓動控制檯進程
- 8. Eclipse進程啓動
- 9. 應用程序啓動時間限制僅限於applicationDidFinishLaunching嗎?
- 10. Docker - 進程不在啓動時啓動
- 11. PHP popen進程限制?
- 12. 限制Linux進程內存
- 13. 從C++進程啓動Java進程
- 14. 根據後臺進程啓動進程
- 15. 有沒有辦法限制啓動時進程消耗的內存
- 16. Golang:如何在二進制更新時自動重啓進程?
- 17. 進程啓動和假冒
- 18. 從Java啓動Cygwin進程
- 19. C#等待進程啓動
- 20. C#同步進程啓動
- 21. MVC4 WebApi進程啓動器
- 22. 無法啓動kibana進程
- 23. Monit無法啓動進程
- 24. 無法啓動delayed_jobs進程
- 25. grep啓動後臺進程
- 26. Powershell啓動進程Java PassThru
- 27. 無法啓動pty進程:
- 28. Linux守護進程啓動
- 29. Java啓動獨立進程
- 30. 啓動下級進程
請您詳細說明一下嗎? – peterwkc 2010-10-09 16:31:13
謝謝。你能提供一個例子嗎? – peterwkc 2010-10-10 02:22:05
感謝你的例子。 – peterwkc 2010-10-12 10:47:24