qt中网络编程关于QNetworkReply导致崩溃

现场项目上线之后,使用中总是闪退,release版本exe不好查找问题,困扰了我好几天,最后发现导致问题的可能点是:由于请求的网址都是一样的,只是请求数据不一样,所以只使用了一个reply,即多个reply绑定同一个槽函数,而在服务器的响应绑定的槽函数中,我每次处理完数据都会调用deletelater,对于高频率的请求,可能之前请求还没有deletelater掉,这次请求又使用了,总之不妥,我就把deletelater注释掉了试试,似乎就不崩溃了,以下是一些其他的可能

重复删除:如果已经安排了一个对象的删除,然后又再次调用 deleteLater(),这可能会导致未定义的行为。

对象指针悬挂:如果在对象被删除后仍然访问其指针,这将导致悬挂指针,进一步的操作可能会导致程序崩溃。

对象在删除前被使用:如果对象在 deleteLater() 调用后仍然被其他线程使用,而该对象在另一个线程中被销毁,这可能会导致数据竞争和崩溃。

相关推荐
喵个咪1 天前
Go-Wind HTTP 服务器从入门到精通
后端·http·go
用户805533698032 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner2 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Goodbye7 天前
大模型无状态架构:从 HTTP 协议到 Harness AI 工程的深度解析
http
Quz7 天前
QML Hello World 入门示例
qt
xcyxiner10 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner11 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner11 天前
DicomViewer (添加模型类)3
qt
xcyxiner12 天前
DicomViewer (目录调整) 2
qt
xcyxiner12 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt