소스 검색

remove lock file

walkor 3 년 전
부모
커밋
b0857b5c39
1개의 변경된 파일10개의 추가작업 그리고 1개의 파일을 삭제
  1. 10 1
      src/Worker.php

+ 10 - 1
src/Worker.php

@@ -634,9 +634,18 @@ class Worker
         if (\DIRECTORY_SEPARATOR !== '/') {
             return;
         }
-        $fd = $fd ?: \fopen(static::$pidFile . '.lock', 'a+');
+        $lock_file = static::$pidFile . '.lock';
+        $fd = $fd ?: \fopen($lock_file, 'a+');
         if ($fd) {
             flock($fd, $flag);
+            if ($flag === \LOCK_UN) {
+                fclose($fd);
+                $fd = null;
+                clearstatcache();
+                if (\is_file($lock_file)) {
+                    unlink($lock_file);
+                }
+            }
         }
     }