查看完整版本: [-- 两个线程使用同一串口 --]

QTCN开发网 -> Qt移动平台开发 -> 两个线程使用同一串口 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

clannadzy 2015-06-06 18:18

两个线程使用同一串口

我要写一个APP,这个APP是一个派生自QWidget类的子类,它有两个QThread类对象和我自己封装好的Port类.一个线程是用来发送数据的,另一个是用来后台不断接收数据的,以此实现两个线程分别对串口进行读写.Port类将会在QWidget被实例化,串口也将在QWidget被打开,然后再将Port对象分别传入两个线程.那么,问题来了,Port类里有个Buffer,这两线程操作Buffer时,要上锁吧?我这样的设计没问题吧?

realfan 2015-06-11 08:43
Port对象要移到一个单独的线程中。
在发送线程调用发送函数,发送行为就运行在发送线程中
Port中,通过dataready触发读取数据,这个发生在Port对象所在线程中。
不同线程访问同一对象,应该加锁。


查看完整版本: [-- 两个线程使用同一串口 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled