/// <summary> /// 线程的执行逻辑 /// </summary> private void ThreadMainLogic() { try { while (true) { threadContoll.WaitOne(); lock (threadLock) { if (!isUpdate) { break; } } threadContoll.Reset(); //Console.WriteLine("我执行了" + Id); StartThread(); //Console.WriteLine("我完毕了" + Id); this.mainHandler = null; End(); } } catch (Exception e) { SetError(e.ToString()); } Destrory(); }
/// <summary> /// 执行线程 /// </summary> /// <param name="id">线程id</param> /// <param name="mainHanlder">线程锁</param> public void Start(string id, ThreadMainHandler mainHanlder) { Id = id; this.mainHandler = mainHanlder; threadContoll.Set(); }