tag 标签: c#关闭线程

相关博文
  • 热度 3
    2012-3-11 21:57
    2630 次阅读|
    0 个评论
    用一个线程不断地从串口中抓取数据,并且将抓取到的数据invoke 到 textbox中,退出系统时调用 if(thread.isAlive) thread.Abort(); 也弹出了“正在终止线程” 对话框, 尝试了多次,对线程进行了稍微的改动.采用了下面的办法: 1.定义一个读取标志:         private bool readCardSign = true;         public bool ReadCardSign         {             get { return readCardSign; }             set { readCardSign = value; }         } 2.抓取数据线程:         private void ReadCardFun()         {             while (true)             {                 if (ReadCardSign)      //获取读取标志                 {                     //获取串口中的数据                     //获取成功则将数据 invoke 到 textbox中                     Thread.Sleep(300);                 }                 else                 {                     break;            //如果读取标志为 false 则中断线程                 }             }         } 3. 退出系统时调用:                 if (tdReadCard.IsAlive)                 {                     ReadCardSign = false;                 }                 this.Close();