void sleepThread(Object o) { ConfluentWaitHandle handle = (ConfluentWaitHandle)o; Thread.Sleep(1000); handle.EndThread(); }
public void TestA () { ConfluentWaitHandle handle = new ConfluentWaitHandle (); Thread[] list = new Thread[] { new Thread (sleepThread), new Thread (sleepThread) }; for (int i = 0; i < list.Length; i ++) { handle.StartThread (); list[i].Start (handle); } DateTime dt = DateTime.Now; handle.WaitOne (); double t = DateTime.Now.Subtract (dt).TotalSeconds; // こんな適当なチェックでいいのかな… Assert.IsTrue (t >= 0.8 && t <= 1.2, t.ToString ()); }
public void TestA() { ConfluentWaitHandle handle = new ConfluentWaitHandle(); Thread[] list = new Thread[] { new Thread(sleepThread), new Thread(sleepThread) }; for (int i = 0; i < list.Length; i++) { handle.StartThread(); list[i].Start(handle); } DateTime dt = DateTime.Now; handle.WaitOne(); double t = DateTime.Now.Subtract(dt).TotalSeconds; // こんな適当なチェックでいいのかな… Assert.IsTrue(t >= 0.8 && t <= 1.2, t.ToString()); }