能用异步,就不要用多线程,感觉多线程要是控制不好,比较容易出问题
//要异步完成的方法
private void AddRadNum()
{
while(true)
{
Random r = new Random();
lstNum.Items.Add( r.Next(100,1000));
Thread.Sleep(500);
}
}
//定义一个委托
private delegate void delegateAddRadNum();
private void btnOK_Click(object sender, System.EventArgs e)
{
//实例化委托
delegateAddRadNum da = new delegateAddRadNum(AddRadNum);
//开始异步
IAsyncResult iar = da.BeginInvoke(null, null);
}