Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
os.mkdir(LOCKDIR)
# print(f"try locking {self.inode}")
try:
# portalocker.Lock has its own retry functionality,
# But we cannot use it here, because we want to be able
# to "request_abort".
# It's a bit of a layered approach to build a high-level api
# on top of another high-level api such as portalocker.Lock.
# But since things are still evolving around here, it will leave it as is.
self.lock = portalocker.Lock(
filename=LOCKDIR + str(self.inode),
fail_when_locked=True,
flags=self._get_flags(),
)
self.lock.acquire()
except portalocker.exceptions.AlreadyLocked:
# print("Failed to lock")
if self.high_priority:
self._request_abort()
return False
# print(f"Managed to lock {self.inode}")
self._remove_abort_request()
return True