我正在运行一个正在发送邮件的线程。我怎么知道一个线程已经完成了执行?
new Thread(x => SendMail(node.Attributes["id"].Value.ToString(), node["fname"].InnerText + " " + node["lname"].InnerText, 500, node["email"].InnerText)).Start();发布于 2013-01-12 04:18:18
除了安德鲁的回答之外,你还可以使用BackgroundWorker,它已经有了RunWorkerCompleted event BackgroundWorker
发布于 2013-01-11 21:09:48
var thr = new Thread(x => SendMail(node.Attributes["id"].Value.ToString(), node["fname"].InnerText + " " + node["lname"].InnerText, 500, node["email"].InnerText));
thr.Start();
thr.Join();//In this place main thread will wait发布于 2013-01-11 21:07:14
您应该保留对您创建的线程实例的引用,然后检查ThreadState。您还可以检查IsAlive属性,以查看线程当前是否正在执行。
https://stackoverflow.com/questions/14278821
复制相似问题