多个线程同时去一个表中取数据,如何控制同一条数据不被2个线程取到? 有多个线程同时在一张表中取数据,表中有个字段记录着该条数据是否已被取过,如果被取过就不再去取。在并发的时候,如何防止不被2个线程同时取?如果用synchronized时,那对该表的访问是不是只能是单线程了? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果不需要修改写入没必要同步吧,不是很理解楼主的问题!synchronized作用是在某一时刻只允许一个线程访问同步方法或块。并非就是单线程了! ◎ 在并发的时候,如何防止不被2个线程同时取?—— 基本上主要靠在数据库端做手脚,否则集群环境下无法保证。—— 做法基本上是捆绑两句话在一个事务中,第一句Select...For Update,第二句修改作为标志的字段。◎ 如果用synchronized时,那对该表的访问是不是只能是单线程了?—— 不能说是单线程,应该说是串行化访问。Select .... For Update 也可以实现类似于串行化访问的效果。 hql问题求解 struts2对action中的某个方法拦截后,传递过来的参数怎么获取? 如何判断XML中结点为文本结点 一个ant简单问题 <textarea>里得到的数据怎么把他转成一个数组? 论述12小球问题(升级散分) 如何避免写EXCEL时出现科学记数法? 请问一个语法? 如何在jsp或者servlet中设置Paramter 用javabean对数据库进行查询后的结果应该以什么样的方式返回给jsp? 求felix+struts2做的能运行的web项目源码 求助 jdb异常问题
synchronized作用是在某一时刻只允许一个线程访问同步方法或块。并非就是单线程了!
—— 基本上主要靠在数据库端做手脚,否则集群环境下无法保证。
—— 做法基本上是捆绑两句话在一个事务中,第一句Select...For Update,第二句修改作为标志的字段。◎ 如果用synchronized时,那对该表的访问是不是只能是单线程了?
—— 不能说是单线程,应该说是串行化访问。Select .... For Update 也可以实现类似于串行化访问的效果。