ThreadStart 做为形参,不太理解。这是一个自定义控牛里的代码节选
private ThreadStart OnStartClicked = null;
private void button1_Click(object sender, EventArgs e)
{
this.RaiseEvent(this.OnStartClicked);
} public void SetWaiting(ThreadStart dlgtClickStart)
{
this.OnStartClicked = dlgtClickStart;
}
public void RaiseEvent(ThreadStart ts)
{
if (ts==null) {return ;}
base.Invoke (ts);
return ;
}
问题;
this.RaiseEvent(this.OnStartClicked);会产生一个新线程吗?
private ThreadStart OnStartClicked = null;
private void button1_Click(object sender, EventArgs e)
{
this.RaiseEvent(this.OnStartClicked);
} public void SetWaiting(ThreadStart dlgtClickStart)
{
this.OnStartClicked = dlgtClickStart;
}
public void RaiseEvent(ThreadStart ts)
{
if (ts==null) {return ;}
base.Invoke (ts);
return ;
}
问题;
this.RaiseEvent(this.OnStartClicked);会产生一个新线程吗?
调用SetWaiting给委托赋值
调用RaiseEvent
//ts为空直接返回了
if (ts==null) {return ;}
//不为空时才会用父类调用
base.Invoke (ts);
return ;
base.Invoke (ts);父类是怎么样调的。如果有开线程,就会有,如果没有就没有。