首先,不存在选择的问题。如果你们软件架构本身就是异步模式,那就选第二种。如果你们没有异步模式,那就只能第一种同步阻塞。
其次,数据库访问层本身就该屏蔽这种差异 ,调用者应该无感的。
【 在 grainbuds 的大作中提到: 】
: 程序中有个全局的访问数据库的对象,各个线程对数据库的操作都是通过该对象进行(并发),某些时候可能存在数据库访问异常的情况(比如连接断开了),因此需要重置该对象,那么重置的操作如何进行而不会导致重置的过程中有其他线程调用该对象而产生问题。目前能想到的两个可能的方案是:
: 1 对该对象的调用地方处处加锁。
: 2 将所有对该对象的访问加入任务队列,调用逐一完成,如果重置,则完成之前后续任务不进行。
: ...................
--来自微微水木3.5.12
--
FROM 140.206.195.*