首页 > 其他分享 >QSocketNotifier: Socket notifiers cannot be enabled or disabled from another(转)

QSocketNotifier: Socket notifiers cannot be enabled or disabled from another(转)

时间:2022-11-03 15:02:42浏览次数:56  
标签:Socket enabled QObject disabled QSocketNotifier another notifiers new

在使用Qt开发多线程、socket通讯功能时,遇到以下两个问题:

QSocketNotifier: Socket notifiers cannot be enabled or disabled from another

QObject: Cannot create children for a parent that is in a different thread.

经过大量试错,发现出现这样的问题的根本原因,是在调用MoveToThread函数执行多线程操作后,在目标对象的槽函数中存在目标对象的私有成员中进行了new操作,并且将this指针传给了构造函数。

总结了两种可以解决问题的方法:

1.new时不传递this指针

object = new QModbusTcpClient();
2.将new操作放在目标对象的构造函数中

Modbus::Modbus(QObject *parent) : QObject(parent)
{
object = new QModbusTcpClient(this);
}
3.使用信号与槽的方法调用方法
————————————————
原文链接:https://blog.csdn.net/qq_38344751/article/details/125745945

标签:Socket,enabled,QObject,disabled,QSocketNotifier,another,notifiers,new
From: https://www.cnblogs.com/xihong2014/p/16854453.html

相关文章

  • WebSocket C#服务器端 当网页刷新时出现无法重连 C#出错:数字小于数组在第一维的下限。
    最近两天公司 要用到 WebSocketC#服务器端+Vue客户端我之前做 WebSocket 是 C#服务器端+原生js客户端原生js客户端 我用iframe 将 WebSocket 用单独一个网......
  • WebSocket C#服务器端+VUE客户端
    WebSocketC#服务器端先定义一个基类注:用于和WinSocket融合。当然不用也是可以的clsSocketusingSystem;usingSystem.Collections.Generic;usingSystem.Text;na......
  • Android实现Socket通信
    效果图  用Idea创建一个java工程importjava.io.*;importjava.net.*;publicclassMain{publicstaticvoidmain(String[]args)throwsIOException{......
  • Netty+WebSocket 获取火,币交易所数据项目
    先附上项目项目GitHub地址 spring-boot-netty-websocket-huobi项目简介本项目使用 SpringBoot+Netty来开发WebSocket服务器,与火币交易所Websocket建立连接,时时获取火......
  • WebSocket
      一、是什么WebSocket,是一种网络传输协议,位于OSI模型的应用层。可在单个TCP连接上进行全双工通信,能更好的节省服务器资源和带宽并达到实时通迅客户端和服务器只需......
  • qt错误?undefinedreferenceto`_imp___ZN10QTcpSocketD1Ev
    错误信息:undefinedreferenceto`_imp___ZN10QTcpSocketD1Ev'undefinedreferenceto`_imp___ZN10QTcpSocketC1EP7QObject'undefinedreferenceto`_imp___ZN10QTcpSo......
  • docker 启动Docker“Got permission denied while trying to connect to the Docker d
    背景:使用腾讯云的服务器,在执行命令dockerps提示  参考文档:https://cloud.tencent.com/developer/article/2051230原因:linux的用户权限不够。具体操作,完全按照操作......
  • cross socket ssl动态库
    crosssocketssl动态库crosssocket支持ssl需要动态库的支持,它的源码注释就说得很清楚。unitNet.OpenSSL;{OpenSSL下载:https://indy.fulgan.com/SSL/htt......
  • 《安全编程技术》实验三 socket安全编程
    一、实验目的与要求:(一)实验目的该实验为设计性实验,实验目的如下:了解本地计算机的网络配置。熟悉面向对象编程/C编程环境,能够编写简单程序。熟练网络查阅源代码资源并......
  • C#-socket通信实例
    使用socket写一个通信demopublicpartialclassForm1:Form{SocketsocketServer;IPEndPointipe=newIPEndPoint(IPAddress.Parse("127.0......