我正在Linux中編寫一個只能運行一個實例的Lua腳本。要在Bash中完成此操作,我將使用mkdir
創建一個鎖定文件,然後在文件存在的情況下立即從腳本返回;如果以前的實例沒有運行,則允許腳本繼續並在完成後刪除鎖定文件。防止多次執行Lua腳本
有沒有辦法在Lua中以原子方式「檢查文件是否存在或創建它,如果它不存在」?我在Lua文檔中找不到任何這樣的功能,但我對這種語言很陌生。 io.open("filename","w")
看起來不符合這些要求。如果沒有本地模擬到mkdir
,是否有更好的方法來完成這種類型的腳本鎖定在Lua?謝謝!
這似乎是http://stackoverflow.com/questions/4990990/lua-check-if-a-file-exists的副本.. 。請嘗試其中一個解決方案來檢查LUA中是否存在文件 – renab
@renab我看到了這些;沒有答案自動檢查和/或創建一個文件,這是我特別提出的問題。 –
這聽起來更像是單個進程的執行,這與線程安全不一樣。 –