[System] Tweak socket test
[mono-project.git] / mono / tests / delegate-async-exit.cs
blobb61a3b5ead73bef1ea0c9a4a00ec316db2868a83
1 using System;
2 using System.Threading;
3 using System.Runtime.InteropServices;
5 class foo {
6 delegate void foo_delegate ();
8 static void function () {
9 Console.WriteLine ("Delegate method");
12 static void async_callback (IAsyncResult ar)
14 Console.WriteLine ("Async callback " + ar.AsyncState);
15 Environment.Exit(0);
18 public static int Main () {
19 Environment.ExitCode = 2;
20 foo_delegate d = new foo_delegate (function);
21 AsyncCallback ac = new AsyncCallback (async_callback);
22 IAsyncResult ar1 = d.BeginInvoke (ac, "foo");
24 ar1.AsyncWaitHandle.WaitOne();
25 d.EndInvoke(ar1);
27 Thread.Sleep(1000);
28 Console.WriteLine("Main returns");
29 return 1;