Skip to content

Commit 5204b14

Browse files
remove event loop lock (#49)
1 parent 4a7df6c commit 5204b14

File tree

1 file changed

+2
-10
lines changed

1 file changed

+2
-10
lines changed

livekit/_ffi_client.py

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,7 @@ def ffi_event_callback(data_ptr: ctypes.POINTER(ctypes.c_uint8), # type: ignore
7070
event = proto_ffi.FfiEvent()
7171
event.ParseFromString(event_data)
7272

73-
with ffi_client._lock:
74-
loop = ffi_client._event_loop
75-
76-
loop.call_soon_threadsafe(dispatch_event, event)
73+
ffi_client._event_loop.call_soon_threadsafe(dispatch_event, event)
7774

7875

7976
def dispatch_event(event: proto_ffi.FfiEvent) -> None:
@@ -84,18 +81,14 @@ def dispatch_event(event: proto_ffi.FfiEvent) -> None:
8481
class FfiClient(EventEmitter):
8582
def __init__(self) -> None:
8683
super().__init__()
87-
self._lock = threading.Lock()
84+
self._event_loop = asyncio.get_event_loop()
8885

8986
req = proto_ffi.FfiRequest()
9087
cb_callback = int(ctypes.cast(
9188
ffi_event_callback, ctypes.c_void_p).value) # type: ignore
9289
req.initialize.event_callback_ptr = cb_callback
9390
self.request(req)
9491

95-
def set_event_loop(self, loop: asyncio.AbstractEventLoop) -> None:
96-
with self._lock:
97-
self._event_loop = loop
98-
9992
def request(self, req: proto_ffi.FfiRequest) -> proto_ffi.FfiResponse:
10093
proto_data = req.SerializeToString()
10194
proto_len = len(proto_data)
@@ -125,4 +118,3 @@ def __del__(self):
125118

126119

127120
ffi_client = FfiClient()
128-
ffi_client.set_event_loop(asyncio.get_event_loop())

0 commit comments

Comments
 (0)