1) Ich habe gehört, dass es zu einem Speicherleck kommen kann, wenn wir EndInvoke() nicht aufrufen. Können Sie demonstrieren, wie es zu einem Speicherleck kommen kann?
2) Wenn ich EndInvoke() aufrufen soll, soll ich den Code wie folgt verwenden?
namespace BlockMechanism
{
public delegate int MyDelegate(List<int> someInts);
class MainClass
{
static void Main()
{
List<int> someInts = new List<int> { 1, 2, 3, 4, 5, 6, 7 };
MyDelegate test = FinalResult;
IAsyncResult res=test.BeginInvoke(someInts, null, test);
Console.WriteLine(test.EndInvoke(res));
Console.ReadKey(true);
}
public static int FinalResult(List<int> Mylist)
{
return Mylist.Sum();
}
}
}