파이썬 비동기(asyncio) 질문
조회수 450회
제가 구현하고자 하는 것의 개괄은
A클라이언트, B서버.
A는 X라는 node의 값을 실시간으로 받아오는데 이 값에 변화가 생기면 그 순간에만
B에 이를 알리고 싶습니다.
Q1. 실시간으로 받아오는 것을 무한루프 (예를 들면, while True: )로 해도 되는 것인지요.
Q2. 아니면 타이머를 걸어서 하는 것이 더 나은 선택일까요?.
Q3. X라는 node의 값에 변화가 있을 때만 A가 움직이게 하려고 알아 보다가 async까지 간 것인데.. async를 이용한 client로 변화의 감지를 할 수 있을 까요? 제 생각에는 결국에는 무한루프가 돌아가는 것은 같은데 무한루프가 변화를 감지한 순간에만 async로 B서버에 알릴 수 있지 않을까 싶어서요....
Q4. Q3처럼 구현 해보려고 하는데 무한루프 안에서 async 값을 보내버리면 무한루프가 자동으로 풀려버립니다. (반복을 하지 않아요) 이는 제가 async만의 특성을 잘 몰라서 그런 것 일 수도 있지만, 아니면 원래 coroutine같은 것은 무한루프를 빠져 나오는 것인지 궁금합니다. (타이머를 걸어도 async를 사용하면 타이머에따라 계속 반복하지 않고 딱 한 번만 수행 됩니다.)
댓글 입력