WCF에서 [OperationContract(IsOneWay = true)]
속성이 있습니다. 그러나 WCF는 비 차단 기능을 만들기 위해 느리고 무겁습니다. 이상적으로는 static void nonblocking과 같은 것이 MethodFoo(){}
있지만 나는 존재하지 않는다고 생각합니다.
C #에서 비 차단 메서드 호출을 만드는 가장 빠른 방법은 무엇입니까?
예 :
class Foo
{
static void Main()
{
FireAway(); //No callback, just go away
Console.WriteLine("Happens immediately");
}
static void FireAway()
{
System.Threading.Thread.Sleep(5000);
Console.WriteLine("5 seconds later");
}
}
NB :이 글을 읽는 모든 사람들이 실제로 방법을 끝내기를 원한다면 생각 해봐야합니다. (# 2 상위 답변 참조)이 방법을 완료해야하는 경우 ASP.NET 응용 프로그램과 같은 일부 위치에서 스레드를 활성 상태로 유지하고 차단하기위한 작업을 수행해야합니다. 그렇지 않으면 이로 인해 "불을 잊었지만 결코 실제적으로 실행되지 않을 수 있습니다".이 경우 코드를 전혀 작성하지 않는 것이 더 간단합니다. ( 이것이 ASP.NET에서 어떻게 작동하는지에 대한 좋은 설명 )