大家好,
在我的 asp.net web 应用程序中,我有以下代码可以向不同的用户发送不同的邮件
foreach (DataRow dataRow in dataTable.Rows)
{
sendMails();
}
public void sendMails()
{
//mail code
}
现在我想在 foreach 循环中使用线程,但我不知道结果会是什么,因为如果我启动“n”个线程,线程池会发生什么。考虑我的数据表包含 1000 行,
是否可以同时运行 1000 个线程?
foreach (DataRow dataRow in dataTable.Rows)
{
ThreadStart ts1 = new ThreadStart(sendMails);
Thread thread1 = new Thread(ts1);
thread1.Start();
}
public void sendMails()
{
//mail code
}
最佳答案
启动一个线程来完成发送所有邮件的工作:
new Thread(() => {
foreach (DataRow dataRow in dataTable.Rows)
{
sendMails();
}
}).Start();
关于c# - c#中foreach循环内的线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2005649/