zoukankan      html  css  js  c++  java
  • 清空消息队列的缓存buffer

    串口通信 

    Unix终端I/O函数。作用:清空终端未完成的输入/输出请求及数据。
     
    包含头文件:
    1
    #include <termios.h>
    1
    int tcflush(int fd, int queue_selector);
    参数说明:[1] 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    fd                // 终端I/O打开的句柄
     
    queue_selector    // 控制tcflush的操作,取值为下面三个常数中的一个:
     
        TCIFLUSH  // 清除正收到的数据,且不会读取出来。
     
        TCOFLUSH  // 清除正写入的数据,且不会发送至终端。
     
        TCIOFLUSH // 清除所有正在发生的I/O数据。
    返回值说明:
    1
    2
    3
    0     // 成功
     
    -1    // 失败,并且为 errno 置值来指示错误

    void CVirtualSerial::serial_flush(void)
    {
    if(this->m_fd!=-1) //serial_fd有效
    {
    tcflush(this->m_fd, TCIFLUSH);
    tcflush(this->m_fd, TCOFLUSH);
    }
    }

    消息队列

    void MessageQueue::Destroy()
    {
    msgctl( msg_id, IPC_RMID, 0 );
    }

  • 相关阅读:
    编程总结2
    编程总结3
    《秋季学期学习总结》
    《人生路上对我影响最大的三位老师》
    第八周编程总结
    第七周编程总结
    第六周编程总结
    第五周作业
    第四周编程总结
    第三周编程总结
  • 原文地址:https://www.cnblogs.com/secondtononewe/p/7543405.html
Copyright © 2011-2022 走看看