@@ -317,42 +317,43 @@ async def create(cls: Type[APIType], address: str, **kw) -> APIType:
317317 from ..supervisor .node_info import NodeInfoCollectorActor
318318 from ..uploader import NodeInfoUploaderActor
319319
320+ create_actor_coros = [
321+ mo .create_actor (
322+ SupervisorPeerLocatorActor ,
323+ "fixed" ,
324+ address ,
325+ uid = SupervisorPeerLocatorActor .default_uid (),
326+ address = address ,
327+ ),
328+ mo .create_actor (
329+ NodeInfoCollectorActor ,
330+ uid = NodeInfoCollectorActor .default_uid (),
331+ address = address ,
332+ ),
333+ mo .create_actor (
334+ NodeAllocatorActor ,
335+ "fixed" ,
336+ address ,
337+ uid = NodeAllocatorActor .default_uid (),
338+ address = address ,
339+ ),
340+ mo .create_actor (
341+ NodeInfoUploaderActor ,
342+ NodeRole .WORKER ,
343+ interval = kw .get ("upload_interval" ),
344+ band_to_resource = kw .get ("band_to_resource" ),
345+ use_gpu = kw .get ("use_gpu" , False ),
346+ uid = NodeInfoUploaderActor .default_uid (),
347+ address = address ,
348+ ),
349+ mo .create_actor (
350+ ProcessInfoManagerActor ,
351+ uid = ProcessInfoManagerActor .default_uid (),
352+ address = address ,
353+ ),
354+ ]
320355 dones , _ = await asyncio .wait (
321- [
322- mo .create_actor (
323- SupervisorPeerLocatorActor ,
324- "fixed" ,
325- address ,
326- uid = SupervisorPeerLocatorActor .default_uid (),
327- address = address ,
328- ),
329- mo .create_actor (
330- NodeInfoCollectorActor ,
331- uid = NodeInfoCollectorActor .default_uid (),
332- address = address ,
333- ),
334- mo .create_actor (
335- NodeAllocatorActor ,
336- "fixed" ,
337- address ,
338- uid = NodeAllocatorActor .default_uid (),
339- address = address ,
340- ),
341- mo .create_actor (
342- NodeInfoUploaderActor ,
343- NodeRole .WORKER ,
344- interval = kw .get ("upload_interval" ),
345- band_to_resource = kw .get ("band_to_resource" ),
346- use_gpu = kw .get ("use_gpu" , False ),
347- uid = NodeInfoUploaderActor .default_uid (),
348- address = address ,
349- ),
350- mo .create_actor (
351- ProcessInfoManagerActor ,
352- uid = ProcessInfoManagerActor .default_uid (),
353- address = address ,
354- ),
355- ]
356+ [asyncio .ensure_future (coro ) for coro in create_actor_coros ]
356357 )
357358
358359 for task in dones :
@@ -371,22 +372,20 @@ async def cleanup(cls, address: str):
371372 from ..uploader import NodeInfoUploaderActor
372373 from ..supervisor .node_info import NodeInfoCollectorActor
373374
374- await asyncio .wait (
375- [
376- mo .destroy_actor (
377- mo .create_actor_ref (
378- uid = SupervisorPeerLocatorActor .default_uid (), address = address
379- )
380- ),
381- mo .destroy_actor (
382- mo .create_actor_ref (
383- uid = NodeInfoCollectorActor .default_uid (), address = address
384- )
385- ),
386- mo .destroy_actor (
387- mo .create_actor_ref (
388- uid = NodeInfoUploaderActor .default_uid (), address = address
389- )
390- ),
391- ]
375+ await asyncio .gather (
376+ mo .destroy_actor (
377+ mo .create_actor_ref (
378+ uid = SupervisorPeerLocatorActor .default_uid (), address = address
379+ )
380+ ),
381+ mo .destroy_actor (
382+ mo .create_actor_ref (
383+ uid = NodeInfoCollectorActor .default_uid (), address = address
384+ )
385+ ),
386+ mo .destroy_actor (
387+ mo .create_actor_ref (
388+ uid = NodeInfoUploaderActor .default_uid (), address = address
389+ )
390+ ),
392391 )
0 commit comments