多线程访问同一个数据库,需要加锁么

多线程访问同一个数据库,需要加锁么,第1张

线程访问数据库,其中有一个线程会长时间占用数据库。这个线程是独立线程,另外有一个线程池也会访问数据库,这个线程池中的线程我用lock锁住数据库了,但是由于独立线程和线程池线程不在同一个方法中,所以访问数据库的时间不同,用lock只能对线程池线程有效 回答: 你这么讲一定能保证两个线程不会在一个时刻共同发起对数据库的访问么?除非你做了很多同步让两个线程都按照你设计的逻辑不发生访问数据库的冲突,否则你必须加锁。看你的说明,你应该没加同步,所以他会出现冲突,你不能缺锁,他是共享资源的访问了

给你个思路吧。你先用多线程输出1和2,一个线程输出1,一个线程输出2。 当你能很熟练控制输出1和2的位置。那么多线程访问数据库就很简单了。 因为你不同线程调用不同的方法,你方法里面访问数据库就好啦。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/sjk/6837656.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-29
下一篇2023-03-29

发表评论

登录后才能评论

评论列表(0条)

    保存