public static void Kill(MovingThread thread) { EventWaitHandle wh = thread.CallDelegInMainLoop(KillMe); wh.WaitOne(); if (thread.ExceptionHappened != null) { throw thread.ExceptionHappened; } wh.Close(); }
public static void Start (MovingThread guiThread) { if ((guiThread != null) && (guiThread.ThreadState == ThreadState.Running)) return; if (guiThread != null) { guiThread.NotMainLoopDeleg = Run; guiThread.Start (); //little hack (it doesn't matter, it's just for the nunit tests) in //order to wait for Gtk initialization for (int i = 0; i < 20 && win == null; i++) Thread.Sleep (250); } else { Run (); } }
public static void Start(MovingThread guiThread) { if ((guiThread != null) && (guiThread.ThreadState == ThreadState.Running)) { return; } if (guiThread != null) { guiThread.NotMainLoopDeleg = Run; guiThread.Start(); //little hack (it doesn't matter, it's just for the nunit tests) in //order to wait for Gtk initialization for (int i = 0; i < 20 && win == null; i++) { Thread.Sleep(250); } } else { Run(); } }
public static void StartRemotely (MovingThread guiThread) { Start (guiThread); }
public static void Kill (MovingThread thread) { EventWaitHandle wh = thread.CallDelegInMainLoop (KillMe); wh.WaitOne (); if (thread.ExceptionHappened != null) throw thread.ExceptionHappened; wh.Close (); }
public static void StartRemotely(MovingThread guiThread) { Start(guiThread); }