一共有2个线程,readThread和revThread。均访问output.txt文件。
revThread用来将串口接收到的数据存入output.txt中,每1ms对串口进行读取并存储一次。
readThread用来处理output.txt中的信息,并显示出来,每2ms读取一次output.txt文件。
这两个我线程单独调试均正常。但现在联合到一起就不好用了。revThread线程可以正常读串口,可以将读到的数据存入output.txt文件中。但是,readThread线程总出现问题:由于最开始output.txt文件是空的,我是想,串口数据一进来就存储并显示,但是只能存储却显示不出来。但是如果将程序终止,然后再次运行,使用这个已经有了数据的output.txt的文件,就可以显示了。但显示的内容是原有的,不是最新的。
这个问题不知道怎么解决了?是因为output.txt是互斥变量的原因吗?还是读output.txt文件的read函数有什么问题啊?