@@ -312,6 +312,7 @@ class BackgroundResources:
312312 def __call__ (self ):
313313 """Clean up background resources."""
314314
315+ self .engine_dead = True
315316 for core_engine in self .core_engines :
316317 core_engine .close ()
317318
@@ -564,7 +565,7 @@ def add_request(self, request: EngineCoreRequest) -> None:
564565 self ._send_input (EngineCoreRequestType .ADD , request )
565566
566567 def abort_requests (self , request_ids : list [str ]) -> None :
567- if len ( request_ids ) > 0 :
568+ if request_ids and not self . resources . engine_dead :
568569 self ._send_input (EngineCoreRequestType .ABORT , request_ids )
569570
570571 def profile (self , is_start : bool = True ) -> None :
@@ -735,7 +736,7 @@ async def add_request_async(self, request: EngineCoreRequest) -> None:
735736 self ._ensure_output_queue_task ()
736737
737738 async def abort_requests_async (self , request_ids : list [str ]) -> None :
738- if len ( request_ids ) > 0 :
739+ if request_ids and not self . resources . engine_dead :
739740 await self ._send_input (EngineCoreRequestType .ABORT , request_ids )
740741
741742 async def profile_async (self , is_start : bool = True ) -> None :
@@ -902,5 +903,6 @@ async def abort_requests_async(self, request_ids: list[str]) -> None:
902903
903904 async def _abort_requests (self , request_ids : list [str ],
904905 engine : CoreEngine ) -> None :
905- await self ._send_input (EngineCoreRequestType .ABORT , request_ids ,
906- engine )
906+ if not self .resources .engine_dead :
907+ await self ._send_input (EngineCoreRequestType .ABORT , request_ids ,
908+ engine )
0 commit comments