EventLoop_Run 함수
헤더: #include <applibs/eventloop.h>
EventLoop을 실행하고 호출자의 실행 스레드에서 보류 중인 이벤트를 디스패치합니다.
EventLoop_Run_Result EventLoop_Run(EventLoop *el, int duration_in_milliseconds,
bool process_one_event);
매개 변수
el
실행할 EventLoop입니다.duration_in_milliseconds
이벤트 루프를 실행하는 데 걸리는 시간입니다. 0이면 루프는 매개 변수 값process_one_event
에 관계없이 이벤트가 준비되고 즉시 중단되는 경우 하나의 이벤트를 처리합니다. 0보다 크면 루프가 중단되지 않는 한 지정된 기간 동안 실행됩니다. 0보다 작으면 루프가 중단될 때까지 계속 실행됩니다. 추가 조건은 EventLoop_Stop 함수 및process_one_event
매개 변수를 참조하세요.process_one_event
첫 번째 이벤트가 처리된 후 루프를 중단할지 여부를 나타냅니다. false이면 루프가 매개 변수에duration_in_milliseconds
지정된 기간 동안 또는 EventLoop_Stop 의해 중단될 때까지 계속 실행됩니다. 이 0이면duration_in_milliseconds
이 매개 변수가 무시됩니다.
반환 값
이 함수 호출의 결과를 나타내는 EventLoop_Run_Result 값을 반환합니다.
발언
애플리케이션은 를 호출 EventLoop_Run(el, -1, false)
하여 호출 스레드의 제어를 에 EventLoop
전달할 수 있습니다.
애플리케이션이 를 호출 EventLoop_Run(el, -1, true)
하는 경우 루프는 첫 번째 이벤트가 준비될 때까지 차단하고 기다린 다음 이벤트를 처리하고 반환합니다.
애플리케이션은 EventLoop_Stop 호출하여 더 일찍 종료 EventLoop_Run
할 수 있습니다.