一个语法问题!请来看看

chenjianying 2001-11-22 12:05:06
Integer count = null;
synchronized (application) {
count = (Integer) application.getAttribute("basic.counter");
if (count == null)
count = new Integer(0);
count = new Integer(count.intValue() + 1);
application.setAttribute("basic.counter", count);
}
其中synchronized 是什么意思呀!!请帮兄弟解决,谢谢!
...全文
109 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
gz&gz
回复
skt985 2002-01-11
42728关注! :)
回复
chenjianying 2001-11-22
谢谢karma
可我英文不好,还是一知半解!
回复
karma 2001-11-22
it will make sure only one user can access "application" object and that section of code at a time
回复
zosatapo 2001-11-22
synchronized表示同步,在多线程环境中,为了保护数据一致性,你想数据库就会明白一点的。
就是说如果某一个时刻两个线程同时想使用这个object的话,首先得到的就可以lock住object,
其他的想使用的线程就进入等待状态的,并且会不断的检查object的状态,看刚才使用object的
那个线程是否已经unlock了object,如果是unlock了,其他的线程又可以竞争了(象前面一样)。没有得到object的依然等待。

java称为对象监视器功能。

注意使用不当会造成dead lock.
回复
panq 2001-11-22
是线程中使用synchronized,表示同步, 表示只有一个线程有application控制权。
回复
ynyn 2001-11-22
呵呵,我不懂,不过看了一下karma说的,估计和ASP里的application.lock差不多,就是锁定application变量,只让当前用户使用
回复
gangzx 2001-11-22
g^z
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2001-11-22 12:05
社区公告
暂无公告