多線程問題,程式運行時,還是單線程,表單就像死了,請哪位老大指點一下,謝謝
最近一直看多線程,感覺高深莫測啊,左看右看,還是不太理解
表單上有二個按鈕,一個是把目前時間顯示在表單上,
另一個是向表中插入10000條記錄,按下這個按鈕同時,則把這個按鈕的enable屬性設定成false,等10000條資料插入到表中,再把它的enable屬性設定 成true
delegate void testdele();
int intCount = 0;
TestUsingThread.testthread tt = new testthread();
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 按鈕事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnListNumber_Click(object sender, EventArgs e)
{
ThreadStart ts = new ThreadStart(this.DeleCheck);
Thread td = new Thread(ts);
td.Start();
}
void DeleCheck()
{
testdele testmydele = new testdele(Add);
this.Invoke(testmydele);
}
/// <summary>
/// 向表中插入10000條記錄
/// </summary>
void Add()
{
btnListNumber.Enabled = false;
for (int i = 0; i < 10000; i++)
{
if (tt.Add(i) > 0)
{
intCount++;
}
}
MessageBox.Show(intCount.ToString());
btnListNumber.Enabled = true;
}
/// <summary>
/// 把目前時間顯示在標籤上
/// </summary>
private void btnListLable_Click(object sender, EventArgs e)
{
labMessage.Text = System.DateTime.Now.ToString();
}