标题:如何删除mysql 的连接名
作者:介农酥
日期:2024-07-17 13:59
内容:
我在线程QtConcurrent::run的线程函数中创建一个临时的QSqlDatabase对象,创建了一个以线程ID为名称的连接,插入1000行之后,在函数的末尾close数据库对象,然后使用QSqlDatabase::removeDatabase(db.connectionName()); 移除连接,但是程序给出警告,说连接还在用,我认为我已经插入完毕了我,为什么这个连接还是不能顺利的移除。
自使用Qt的数据库以来,似乎只有我移除连接,都会报这个警告,一直不知道是什么原因?
#1 [tanyue.esec 07-17 22:45]
这个问题好像是因为引用的数量+1的问题,其实都已经关闭了。
后面使用了一个lambda函数,在同一个线程中进行释放连接名,就没有再出现了
#2 回 tanyue.esec 的帖子 [介农酥 07-19 14:19]
tanyue.esec:这个问题好像是因为引用的数量+1的问题,其实都已经关闭了。
后面使用了一个lambda函数,在同一个线程中进行释放连接名,就没有再出现了 (2024-07-17 22:45)
谢谢!我试过函数结束后,在主线程释放可以(点击按钮释放),不会报警。