WCF에서 제공하는 콜백 인프라를 기반으로 클라이언트 서버를 프로그래밍하려고하지만 비동기 적으로 작동하지 않습니다.WCF : 콜백이 비동기 적이 아닙니다.
제 의뢰인은 내가 서버가 일부 처리를 수행하고 클라이언트와 통신 할 수있는 콜백 객체를 사용하면
MyCallback callback =
OperationContext.Current.GetCallbackChannel<MyNamespace.MyCallback>()
를 수행하여 클라이언트 콜백 채널을 저장 로그인 메소드를 호출하는 서버에 연결합니다.
이 모든 문제는 클라이언트의 호출을 수행 할 때 OperationContract
의 메서드를 IsOneWay=true
으로 설정했지만 서버가 여전히 중단된다는 사실에 있습니다.
Visual Studio에서 디버깅을 위해 서버를 시작하고, 디버깅하고, 클라이언트를 시작하고, 위에서 언급 한 로그인 메서드를 호출하고, 클라이언트의 구현 된 콜백 메서드에 중단 점을 넣고 서버가 클라이언트에 응답을 보냅니다. 서버는 클라이언트의 응답을 기다리면서 수행 할 작업을 중단합니다.
도움을 주시면 감사하겠습니다.
이미 여러 개로 표시되어 있고 재진입을 시도했으며 동일합니다. 서비스가 특정 조건에서 여전히 차단 될 수 있다고 표시된 경우에도 문제는 예외적 인 경우가 아니라 일반적인 경우입니다. 바인딩을 구성하는 방법과 관련이 있다고 추측하고 있지만 변경할 수있는 내용은 표시되지 않습니다. 도움 주셔서 감사합니다. –
여러 개의 스레드가 동시에 허용되지만 하나만 허용되도록 구성 되었기 때문에 다중 및 재진입 기능이 작동하지 않았습니다. 그러나 전화를 걸면 안되기 때문에이 문제가 해결되지 않습니다. 메시지 전송을 처리하는 스레드를 구현할 것입니다. 모든 것에 대해 감사드립니다. –