0
이것은 C# 질문입니다. 비동기 이벤트 콜백에 대한 동기식 호출을 수행하려고합니다. C# : 이벤트를 비동기 적으로 캡처하고 함수에서 값을 동 기적으로 반환하는 방법
class User
{
EventHandler Service1Started()
{
"Looks like service 1 started as I got event from server class" ;
}
EventHandler Service2Started()
{
"Looks like service 2 started as I got event from server class" ;
}
public void StartServicesOnlyStartService2AfterService1Started()
{
Server server = new Server();
// want to call these 2 methods synchronously here
// how to wait till service1 has started thru the event we get
// Want to avoid polling, sleeping etc if possible
server.StartService1();
server.StartService2();
}
}
변경된 질문이 변경되었습니다. 폴링 등을 사용하지 않고 동 기적으로 두 가지 방법 을 호출해야합니다. –
@john appleseed : 질문이 이전에 상당히 불분명했습니다. 이 경우 정확하게 * 동기 *를 의미합니까? 질문을 훨씬 명확하게해야합니다. 당신의 메소드'Service1Started'와'Service2Started'는 이벤트 핸들러에 이상한 서명을 가지고 있습니다. 단지 문자열 리터럴을 가지고 있습니다. 기본적으로 모든 것이 엉망입니다. 질문을 더 분명하게 표현할수록 우리가 실제로 당신을 도울 수있는 기회가 더 많아집니다. –
죄송합니다. 나는 내가 필요한 것을 더 잘 설명 할 필요가 있다고 생각한다. 또한 Rx (Reactive extensions)를 둘러 보는 것은 솔루션 후보로 보이지만 매우 복잡해 보입니다. 고맙습니다. –