qt线程间的通信有其特有的信号与槽,也可通过共享内存的方式实现,下面演示如何使用QShareMemory实现线程间的共享内存;这里使用为简单的理解QShareMemory,并没有实现消费者和生产者的逻辑。
标题生产者端程序
头文件
#ifndef PRODUCERTHREAD_H
#define PRODUCERTHREAD_H
/**
* @file producerthread.h
* @brief 生产者线程,用于向共享内存写入数据
* @author yidong.yang
* @date 2019-10-15
* @hitstory v2.0
*/
#include <QObject>
#include <QThread>
#include <QSharedMemory>
#include <QDebug>
class ProducerThread: public QThread {
public:
ProducerThread();
protected:
void run() override;///>重写run函数
private:
bool stopped;
QSharedMemory *producerShare;///>生产者共享内存
};
#endif // PRODUCERTHREAD_H
源文件
#include "produc
本文介绍了如何使用QT中的QShareMemory组件实现在不同线程间的通信。通过示例代码展示了生产者端和消费者端的创建及主程序的使用,但并未深入探讨具体的信号与槽机制或消费者生产者逻辑。
订阅专栏 解锁全文
3099





