小秋的家

home

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  1 Posts :: 91 Stories :: 17 Comments :: 0 Trackbacks
      什么情况下我们要考虑线程安全?
              多方总结应该是一句话:当两个线程同时访问一个对象的时候,就需要考虑该对象是否是线程安全!(呵呵,参考了一位同事的话)...觉得比较精辟的清晰的.比如我们觉见的servlet,操作数据库等等...

     提高效率需要注意一点的就是分解:
    举个例子大家容易更加明白什么叫分解,分解了为什么能提高效率:
    public synchonized void work(){
        print();
        readMail();
        openMeet();
   }

   该方法里面调用的print()和openMeet()两个方法如果是同步方法,且readMail()需要消耗很多时间时,我们不妨把上面的方法改成如下这样,将会大大提高效率:
   public synchonized void work(){
            synchonized(this) {        
                    print();
            }
        readMail();
            synchonized(this) {        
                     openMeet();
            }
 }
    这样,我们在调用成功一个同步方法后就会解锁给其它线程调用,继续调用费时很长的方法,这样将大大提高性能效率问题了..
   这算是看了一点资料的一点总结吧....希望能对新手有所帮助!高手就不用了,嘿嘿..
posted on 2008-12-30 17:07 棋剑小秋 阅读(295) 评论(0)  编辑  收藏 所属分类: JAVA

只有注册用户登录后才能发表评论。


网站导航: