DispatchAction 中使用 synchronized 没有实现同步

java_2008_4_4 2009-03-18 10:32:06


public class OperationAction extends DispatchAction{
boolean execute = true;
public ActionForward operating(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
.......
.......
if(execute){
execute = false;
running();
execute = true;
}
.......
.......
}

private synchronized void running(){
.......

.......
}
}


在并发量大的情况下还是会有一个以上的线程执行 running 方法.
是否和计算机硬件环境有关系?例如在多 CPU 下运行
有哪位高手能指点下~~~
...全文
22 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
fei1703 2009-07-03
  • 打赏
  • 举报
回复
和硬件无关。问题是OperationAction 有多个实例在运行。

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧