2017-04-22 8 views

답변

2

이벤트 루프에서 동시 루틴을 예약 할 수 있습니다. 비 콜 루틴 내부에서 호출하거나 기다릴 수 없습니다.

는 이제 다음과 같은 코드를 확인하자

위의 코드에서
import asyncio 


async def greetLater(name, delay): 
    await asyncio.sleep(delay) 
    print("Hello {}!".format(name)) 


def main(): 
    loop = asyncio.get_event_loop() 
    loop.run_until_complete(greetLater("masnun", 10)) 


if __name__ == '__main__': 
    main() 

, greetLater는 코 루틴입니다. main 함수에서 직접 호출 할 수는 없습니다. 여기서해야 할 일은 이벤트 루프를 생성하고 거기에서 코 루틴을 스케줄하는 것입니다. asyncio 모듈을 사용하여 이벤트 루프를 만들고 coroutine을 실행할 수 있습니다.

또한 참조 :

(면책 조항 : 주제에 대한 내 개인 블로그 게시물에 대한 링크, 당신의 참조를 위해 구글 수)

+0

루프를 함수로 전달하고 있습니다. 그럼 닫을 수 있니? 내가 만들고있는 것은 다른 사람들에 의해 사용될 수도 있고 당신이 나보다 경험이 많다고 생각합니다. – apoorlydrawnape

+0

시나리오를 완전히 이해하지 못했지만 일반적으로 루프를 전달하는 것이 좋습니다. – masnun

관련 문제