public SharpenThread NewThread (Runnable r) { SharpenThread t = new SharpenThread (r); t.SetDaemon (true); t.Start (); return t; }
public SharpenThread NewThread(Runnable r) { SharpenThread t = new SharpenThread(r); t.SetDaemon(true); t.Start(); return(t); }
public void Run() { lock (this) { thread = SharpenThread.CurrentThread(); } try { if (!canceled) { Action.Run(); } } finally { lock (this) { thread = null; doneEvent.Set(); completed = true; } } }
public bool Cancel(bool mayInterruptIfRunning) { lock (this) { if (canceled || completed) { return(false); } canceled = completed = true; if (mayInterruptIfRunning && thread != null) { try { thread.Abort(); } catch {} thread = null; } doneEvent.Set(); return(true); } }
public int Enumerate (SharpenThread[] array) { lock (threads) { int count = Math.Min (array.Length, threads.Count); threads.CopyTo (0, array, 0, count); return count; } }
internal void Remove (SharpenThread t) { lock (threads) { threads.Remove (t); } }
internal void Add (SharpenThread t) { lock (threads) { threads.Add (t); } }
internal void Remove(SharpenThread t) { lock (threads) { threads.Remove(t); } }
internal void Add(SharpenThread t) { lock (threads) { threads.Add(t); } }