【 在 grainbuds 的大作中提到: 】
: 程序中有个全局的访问数据库的对象,各个线程对数据库的操作都是通过该对象进行(并发),某些时候可能存在数据库访问异常的情况(比如连接断开了),因此需要重置该对象,那么重置的操作如何进行而不会导致重置的过程中有其他线程调用该对象而产生问题。目前能想到的两个可能的方案是:
: 1 对该对象的调用地方处处加锁。
: 2 将所有对该对象的访问加入任务队列,调用逐一完成,如果重置,则完成之前后续任务不进行。
: ...................
if (connection->isOpen())
...
--
FROM 106.39.149.*