2010-08-06 8 views
5

Po raz pierwszy użyłem wątku, który wymaga zwracania wartości do innej klasy za pomocą metody wywołania zwrotnego. Przeczytałem o tym i wydaje się, że wszyscy używają AsyncMethodCaller. Jednakże, mimo że dodałem niezbędne odniesienie do mojego projektu, VS 2008 uważa, że ​​jest niezdefiniowany ... co jeszcze mógłbym tu robić źle?Dlaczego nie mogę korzystać z AsyncMethodCaller?

Odpowiedz

9

nie widzę AsyncMethodCaller w dokumentacji MSDN, inne niż jako część jakiegoś przykładu kod tutaj (można zdefiniować AsyncMethodCaller powierzyć siebie):

http://msdn.microsoft.com/en-us/library/2e08f6yc.aspx

Częściowa kod następująco (patrz link cały przykład):

using System; 
using System.Threading; 

namespace Examples.AdvancedProgramming.AsynchronousOperations 
{ 
    public class AsyncDemo 
    { 
     // The method to be executed asynchronously. 
     public string TestMethod(int callDuration, out int threadId) 
     { 
      Console.WriteLine("Test method begins."); 
      Thread.Sleep(callDuration); 
      threadId = Thread.CurrentThread.ManagedThreadId; 
      return String.Format("My call time was {0}.", callDuration.ToString()); 
     } 
    } 
    // The delegate must have the same signature as the method 
    // it will call asynchronously. 
    public delegate string AsyncMethodCaller(int callDuration, out int threadId); 
} 
+1

o jeez. dzięki za złapanie tego. Nie zdawałem sobie sprawy, że delegata został zdefiniowany w innej sekcji wcześniej w artykule! Ale wstyd. :) – Dave

Powiązane problemy