public override void AsyncDispatch (StatefulMessageHandler cb, object ob) { if (Runtime.IsMainThread) cb (ob); else Runtime.RunInMainThread (() => cb (ob)); }
public override void AsyncDispatch(StatefulMessageHandler cb, object ob) { if (dispatcher == null) dispatcher = Runtime.DispatchService; dispatcher.GuiDispatch (cb, ob); }
public override void AsyncDispatch (StatefulMessageHandler cb, object ob) { if (DispatchService.IsGuiThread) cb (ob); else DispatchService.GuiDispatch (cb, ob); }
public static void ThreadDispatch(StatefulMessageHandler cb, object state) { StatefulMessageContainer smc = new StatefulMessageContainer(cb, state, false); Thread t = new Thread(new ThreadStart(smc.Run)); t.IsBackground = true; t.Start(); }
public override void Dispatch(StatefulMessageHandler cb, object ob) { if (dispatcher == null) dispatcher = Runtime.DispatchService; if (dispatcher.IsGuiThread) cb (ob); else dispatcher.GuiSyncDispatch (cb, ob); }
public static void GuiDispatch(StatefulMessageHandler cb, object state) { if (IsGuiThread) { cb(state); return; } QueueMessage(new StatefulMessageContainer(cb, state, false)); }
public StatefulMessageContainer(StatefulMessageHandler cb, object state, bool isSynchronous) { data = state; callback = cb; this.isSynchronous = isSynchronous; if (DispatchService.DispatchDebug) { callerStack = Environment.StackTrace; } }
public override void AsyncDispatch(StatefulMessageHandler cb, object ob) { if (Runtime.IsMainThread) { cb(ob); } else { Runtime.RunInMainThread(() => cb(ob)); } }
public override void AsyncDispatch(StatefulMessageHandler cb, object ob) { if (DispatchService.IsGuiThread) { cb(ob); } else { DispatchService.GuiDispatch(cb, ob); } }
public override void AsyncDispatch(StatefulMessageHandler cb, object ob) { if (Runtime.IsMainThread) { cb(ob); } else { Runtime.MainSynchronizationContext.Post(state => RunCallback(state), (cb, ob)); } }
public static void GuiSyncDispatch(StatefulMessageHandler cb, object state) { if (IsGuiThread) { cb(state); return; } StatefulMessageContainer mc = new StatefulMessageContainer(cb, state, true); lock (mc) { QueueMessage(mc); Monitor.Wait(mc); } if (mc.Exception != null) { throw new Exception(errormsg, mc.Exception); } }
public virtual void AsyncDispatch (StatefulMessageHandler cb, object ob) { cb.BeginInvoke (ob, null, null); }
public virtual void Dispatch (StatefulMessageHandler cb, object ob) { cb (ob); }
public void GuiSyncDispatch(StatefulMessageHandler cb, object state) { if (IsGuiThread) { cb (state); return; } StatefulMessageContainer mc = new StatefulMessageContainer (cb, state, true); lock (mc) { QueueMessage (mc); Monitor.Wait (mc); } if (mc.Exception != null) throw new Exception (errormsg, mc.Exception); }
public void GuiDispatch(StatefulMessageHandler cb, object state) { QueueMessage (new StatefulMessageContainer (cb, state, false)); }
public static void GuiDispatch(StatefulMessageHandler cb, object state) { QueueMessage(new StatefulMessageContainer(cb, state, false)); }
static void BackgroundDispatch (StatefulMessageHandler cb, object state) { QueueBackground (new StatefulMessageContainer (cb, state, false)); }
public virtual void Dispatch(StatefulMessageHandler cb, object ob) { cb(ob); }
public static void BackgroundDispatch(StatefulMessageHandler cb, object state) { QueueBackground(new StatefulMessageContainer(cb, state, false)); }
public void BackgroundDispatch(StatefulMessageHandler cb, object state) { arrBackgroundQueue.Add (new StatefulMessageContainer (cb, state, false)); //thrBackground.Resume (); }
public void ThreadDispatch(StatefulMessageHandler cb, object state) { StatefulMessageContainer smc = new StatefulMessageContainer (cb, state, false); Thread t = new Thread (new ThreadStart (smc.Run)); t.IsBackground = true; t.Start (); }
public virtual void AsyncDispatch(StatefulMessageHandler cb, object ob) { cb.BeginInvoke(ob, null, null); }
public StatefulMessageContainer (StatefulMessageHandler cb, object state, bool isSynchronous) { data = state; callback = cb; this.isSynchronous = isSynchronous; if (DispatchService.DispatchDebug) callerStack = Environment.StackTrace; }
public static void BackgroundDispatch(StatefulMessageHandler cb, object state) { arrBackgroundQueue.Add(new StatefulMessageContainer(cb, state, false)); //thrBackground.Resume (); }