[quote=引用 2 楼 zhuyf87 的回复:] 多个线程同时访问同一个资源,需要互斥,用“临界区”、“互斥量”等都可以。
多个线程同时访问同一个资源,需要互斥,用“临界区”、“互斥量”等都可以。
数据库不会出现多线程操作时的同步问题,因为在设计的时候,数据库已经全部考虑好了,正如四楼所说 但是你通过VC去操作数据库的时候,如果你的线程没有考虑到同步问题,那可能会出现误差。比如两个线程都要删除一条序号为x的数据,第一条删除了x,那序列的序号就变了,第二个线程再删除序号为x的数据就会产生误操作,举个简单的例子,可能不严谨,能理解就好
[quote=引用 14 楼 tiger9991 的回复:] 1.是 2.数据库层面的你不用担心,但是你自己业务逻辑造成的脏读,你自己要负责。 那什么时候用临界区,什么时候用互斥量呢?因为互斥量可以设置等待互斥对象的时间啊~ 线程级用临界区,进程级用互斥量
1.是 2.数据库层面的你不用担心,但是你自己业务逻辑造成的脏读,你自己要负责。 那什么时候用临界区,什么时候用互斥量呢?因为互斥量可以设置等待互斥对象的时间啊~ 线程级用临界区,进程级用互斥量
不是说不要同步,而是数据库驱动做了支持,不需要你自己操心
[quote=引用 5 楼 GLSC_CENA 的回复:] 临界区怎么会造成死锁,除非你申请了不释放
[quote=引用 8 楼 worldy 的回复:] 数据库驱动会自动协调,数据库内部一般都有记录锁定机制
数据库驱动会自动协调,数据库内部一般都有记录锁定机制
[quote=引用 4 楼 worldy 的回复:] 一般,数据库本身会使用同步控制,用户一般不需要关心同步问题
临界区怎么会造成死锁,除非你申请了不释放
一般,数据库本身会使用同步控制,用户一般不需要关心同步问题
18,356
社区成员
64,214
社区内容
加载中
试试用AI创作助手写篇文章吧