웹 서비스가있어서 실행하는 데 시간이 많이 걸립니다. 처리 스레드를 백그라운드 스레드에 위임 할 계획입니다. & 즉시 응답 응답을 반환하십시오.C#을 사용하여 Simulate Fire & Forget 시나리오 스레딩
이 경우 백그라운드 스레드의 수명이 걱정됩니다.
기본 메소드/스레드가 실행을 완료하기 전에 백그라운드 스레드가 위임 된 작업을 완료합니까?
웹 서비스가있어서 실행하는 데 시간이 많이 걸립니다. 처리 스레드를 백그라운드 스레드에 위임 할 계획입니다. & 즉시 응답 응답을 반환하십시오.C#을 사용하여 Simulate Fire & Forget 시나리오 스레딩
이 경우 백그라운드 스레드의 수명이 걱정됩니다.
기본 메소드/스레드가 실행을 완료하기 전에 백그라운드 스레드가 위임 된 작업을 완료합니까?
서비스를 비동기 적으로 호출해야합니다.
var service = new YouServiceClient();
service.SomeMethodCompleted +=
(sender, args) +=
{
// Put code here to handle the response and extract a return value or whatever.
}
service.SomeMethodAsync();
자세한 내용은 How to: Call WCF Service Operations Asynchronously을 참조하십시오.
응용 프로그램 풀이 재활용되면 백그라운드 스레드가 중단 될 수 있습니다. 이 기사를 살펴보십시오 ThreadPool.QueueUserWorkItem in Web Service for “Fire and Forget” task
"웹 서비스 메서드가 값을 반환 했음에 틀림 없습니다."값은 무엇입니까? 백그라운드 스레드의 가치? UR 배경 스레드가 BIG 작업을 실행할 것이라고했는데 왜 끝내기를 기다리고 싶습니까? – ValidfroM
또는 더 간단한 IMO 인 비동기 호출을 구현하기 만하면됩니다. – ValidfroM