zoukankan      html  css  js  c++  java
  • 解决串口死锁

    代码
    bool closing = false;
    bool listening = false;

    //打开or关闭串口
    btnOpen_Click()
    {
        
    if(btnOpen.Text == "Open")
        {
            serial.Open();
        }
        
    else
        {
            closing 
    = true;
            
    while(listening)Application.DoEvents();
            serial.Close();
            closing 
    = false;
        }
    }
    //串口数据监听
    serial_DataReceived()
    {
        
    if(closing)return;
        
    try
        {
            listening 
    = true;
            

            
    //读取数据等相关操作
            ……

        }
        
    catch{}
        
    finally{listening=false;}
    }
    //退出程序
    btnExit_Click()
    {
        closing 
    = true;
        
    while(listening)Application.DoEvents();
        serial.Close();

        Application.Exit();
    }
  • 相关阅读:
    bzoj2959
    学习笔记::lct
    bzoj3203
    bzoj1319
    bzoj3625
    bzoj3992
    bzoj1565
    bzoj3513
    平常练习动归(1.胖男孩)———最长公共子序列
    2016 noip 复赛 day2
  • 原文地址:https://www.cnblogs.com/hbhbice/p/2102921.html
Copyright © 2011-2022 走看看