Skip to content

Commit f4522fd

Browse files
try contextmanager (#26074)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
1 parent 760a2c6 commit f4522fd

File tree

1 file changed

+15
-34
lines changed

1 file changed

+15
-34
lines changed

api/core/workflow/graph_engine/event_management/event_manager.py

Lines changed: 15 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import threading
66
import time
77
from collections.abc import Generator
8+
from contextlib import contextmanager
89
from typing import final
910

1011
from core.workflow.graph_events import GraphEngineEvent
@@ -51,43 +52,23 @@ def release_write(self) -> None:
5152
"""Release a write lock."""
5253
self._read_ready.release()
5354

54-
def read_lock(self) -> "ReadLockContext":
55+
@contextmanager
56+
def read_lock(self):
5557
"""Return a context manager for read locking."""
56-
return ReadLockContext(self)
58+
self.acquire_read()
59+
try:
60+
yield
61+
finally:
62+
self.release_read()
5763

58-
def write_lock(self) -> "WriteLockContext":
64+
@contextmanager
65+
def write_lock(self):
5966
"""Return a context manager for write locking."""
60-
return WriteLockContext(self)
61-
62-
63-
@final
64-
class ReadLockContext:
65-
"""Context manager for read locks."""
66-
67-
def __init__(self, lock: ReadWriteLock) -> None:
68-
self._lock = lock
69-
70-
def __enter__(self) -> "ReadLockContext":
71-
self._lock.acquire_read()
72-
return self
73-
74-
def __exit__(self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: object) -> None:
75-
self._lock.release_read()
76-
77-
78-
@final
79-
class WriteLockContext:
80-
"""Context manager for write locks."""
81-
82-
def __init__(self, lock: ReadWriteLock) -> None:
83-
self._lock = lock
84-
85-
def __enter__(self) -> "WriteLockContext":
86-
self._lock.acquire_write()
87-
return self
88-
89-
def __exit__(self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: object) -> None:
90-
self._lock.release_write()
67+
self.acquire_write()
68+
try:
69+
yield
70+
finally:
71+
self.release_write()
9172

9273

9374
@final

0 commit comments

Comments
 (0)