문제

MS ATL 라이브러리를 사용하여 작성된 ActiveX 컨트롤이 있고 다음을 통해 이벤트를 실행하고 있습니다. pDispatch->Invoke(..., DISPATCH_METHOD).컨트롤은 .NET 클라이언트에서 사용되며 제 질문은 이것입니다. 이벤트 발생이 동기 호출입니까 아니면 비동기 호출입니까?제가 우려하는 점은 동기식인 경우 이벤트를 처리하는 애플리케이션이 즉시 반환되지 않으면 성능 문제를 일으킬 수 있다는 것입니다.

도움이 되었습니까?

해결책

이벤트를 생성하는 구성 요소의 관점에서는 동기적입니다.컨트롤의 실행 스레드는 수신자 코드를 호출하고 해당 시점에서 모든 것이 컨트롤 범위를 벗어납니다.

이벤트를 받는 클라이언트는 이벤트가 빨리 반환되는지 확인해야 합니다.상당한 양의 작업을 수행해야 하는 경우 이를 비동기적으로 예약해야 합니다.예를 들어 Windows 메시지를 게시하거나 별도의 스레드를 사용합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top