public void Test_EndExecute_After_Dispose() { using var server = new TestServer(ServiceName); server.Register(); using var client = new DdeClient(ServiceName, TopicName); client.Connect(); var ar = client.BeginExecute(TestData, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.Dispose(); Assert.Throws<ObjectDisposedException>(() => client.EndExecute(ar)); }
public void Test_EndExecute() { using var server = new TestServer(ServiceName); server.Register(); using var client = new DdeClient(ServiceName, TopicName); client.Connect(); var ar = client.BeginExecute(TestData, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.EndExecute(ar); Assert.AreEqual(TestData, server.Command); }
private static void OnExecuteComplete(IAsyncResult ar) { try { DdeClient client = (DdeClient)ar.AsyncState; client.EndExecute(ar); Console.WriteLine("OnExecuteComplete"); } catch (Exception e) { Console.WriteLine("OnExecuteComplete: " + e.Message); } }
public void Test_EndExecute_After_Dispose() { using (TestServer server = new TestServer(ServiceName)) { server.Register(); using (DdeClient client = new DdeClient(ServiceName, TopicName)) { client.Connect(); IAsyncResult ar = client.BeginExecute(TestData, null, null); Assert.IsTrue(ar.AsyncWaitHandle.WaitOne(Timeout, false)); client.Dispose(); client.EndExecute(ar); } } }