1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
//
// This test just verifies that we generate the proper signature for
// EndInvoke, something that we were not doing before in the presence
// of out parameters
using System;
class Test
{
delegate int D (int x, out int y);
static int M (int x, out int y)
{
y = x + 2;
return ++x;
}
public static int Main ()
{
int x = 1;
int y = 0;
D del = new D (M);
IAsyncResult ar = del.BeginInvoke (x, out y, null, null);
if (del.EndInvoke (out y, ar) != 2)
return 1;
if (y != 3)
return 2;
Console.WriteLine ("Test ok");
return 0;
}
}
|