class Form1
{
private void sendemail_Click(object sender, EventArgs e)
{
totalproxy=10;
for (int i = 0; i < totalproxy; i++)
{
ThreadStart ts1 = new ThreadStart(sendmail());
Thread thread1 = new Thread(ts1);
thread1.Start();
while (thread1.IsAlive) ;
}
}
public void sendmail()
{
//some code goes here
}
}
给我一个错误,就是这里预期的方法名称
new ThreadStart(xxxxx);
但sendmail()
已写在那里。
答案 0 :(得分:8)
替换
new ThreadStart(sendmail());
与
new ThreadStart(sendmail);
因为您不想调用方法,而是将方法委托给线程
答案 1 :(得分:1)
ThreadStart需要一个代理(http://msdn.microsoft.com/fr-fr/library/system.threading.threadstart(v=vs.80).aspx),它是一个函数地址,与另一个变量的地址完全相同。
在您的代码中,您使用sendmail而不是仅通过其名称ThreadStart ts1 = new ThreadStart(sendmail);