2010-08-06 27 views
5

Bu, ilk defa bir geriçağırım yöntemi ile başka bir sınıfa değer döndürmeyi gerektiren bir iş parçacığı kullandım. Bunu okudum ve herkesin AsyncMethodCaller'ı kullandığı anlaşılıyor. Bununla birlikte, projeme gerekli olan referansı eklesem de, VS 2008 tanımlanmamış olduğunu düşünüyor ... burada başka ne yapabilirim?AsyncMethodCaller'ı neden kullanamıyorum?

cevap

9

Burada bazı örnek kod parçası olarak dışında MSDN belgelerinde AsyncMethodCaller görmüyorum (tanımladığınız AsyncMethodCaller kendini temsilci):

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

Kısmi kod izler (için bağlantıya bakın tüm örnek):

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

oh jeez. Bunu yakaladığın için teşekkürler. Delegenin makalenin başlarında farklı bir bölümde tanımlandığını fark etmemiştim! Ne utanç verici. :) – Dave

İlgili konular