我做的上位机软件,一个线程一直在进行数据采集(通过串口),不停的调用writefile()和readfile()函数完成。
这时候我要修改参数值的时候也需要通过writefile()和readfile()函数来完成。这样的话就冲突了吧,怎么实现呢。
我尝试了互斥锁,但是不太会用。请高手指点一下!

解决方案 »

  1.   

    用临界区应该就行了吧~EnterCriticalSection/LeaveCriticalSection
      

  2.   

    将read和wait放到一起都用临界区保存起来。不能干扰读写。
      

  3.   

    在Win32下用C++实现多线程读写锁
    http://blog.csdn.net/chexlong/article/details/7110060
      

  4.   

    不好意思,不算是两个线程。
    一个线程一直在进行数据采集(通过串口),不停的调用writefile()和readfile()函数完成。
    这时候我要修改参数值的时候也需要通过writefile()和readfile()函数来完成,(这个是通过双击列表的行来触发的)
    我表述有误,你看看这样的话,用互斥锁不行了吧???
      

  5.   


    不好意思,其实不算是线程。
    一个线程一直在进行数据采集(通过串口),不停的调用writefile()和readfile()函数完成。
    这时候我要修改参数值的时候也需要通过writefile()和readfile()函数来完成,(这个是通过双击列表的行来触发的)
    你看这样应该怎么做呢?