我现在需要做一款同时具有modbustcp的server和client能力的软件,我依据example中的modbus Demo,写了两个子类
Server和Client,然后我想在主类MainWindow中进行调用这两个子类。
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = Q_NULLPTR);
~MainWindow();
private Q_SLOTS:
……
private:
Ui::MainWindowClass* ui;
Server* server1;
Client* client1;
};
然而,现在我只要同时保留Server* server1;
Client* client1;程序运行就会在setupUi的centralWidget = new QWidget(MainWindowClass);语句也就是
创建界面的时候,报出异常:0xC0000005: 写入位置 0x000000000000006C 时发生访问冲突。
单独注释掉某一个,另外一个是可以正常运行的。
请问我这个问题应该怎么解决呢?现在还没有到具体的运行阶段,不知道该怎么样通过多进程的方法将类中的两个成员隔离开。
2019年7月26日15:52:33更新
我尝试了创建了一个ServerThread然后在线程中创建server,还是报错