<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    cuiyi's blog(崔毅 crazycy)

    記錄點滴 鑒往事之得失 以資于發(fā)展
    數(shù)據(jù)加載中……

    讀“Rails 2.2 新特性提示”的疑惑與解析

    今天在javaeye讀Rails 2.2 新特性提示 的時候,由于對于ROR沒有知識儲備和認(rèn)識,所以對如下文產(chǎn)生了疑問
    Rails的ActionController是每次HTTP請求創(chuàng)建實例的,因此本身就支持多線程運行;而ActiveRecord是單實例的,因此之前的版本不支持多線程。而Rails2.2改寫了ActiveRecord相應(yīng)的實現(xiàn),使得ActiveRecord是線程安全的了

    我的疑惑是
    而ActiveRecord是單實例的,因此之前的版本不支持多線程。
    -------------

    單實例,就意味著不能多線程么?
    public class SimpleSingleton {
      
    private static final SimpleSingleton instance = new SimpleSingleton ();
      
    public static getInstance(){return instance;}
    }
    這個怎么能不支持多線程呢?

    一直很疑惑,仔細(xì)想了想,慢慢推導(dǎo)
    從 single-thread 到 multi-thread 的難點在于thread security 

    而activerecord是單例,不支持multi
    -thread, 意味著它肯定有很多私有屬性從而是非線程安全的

    所以改進(jìn):
    1) 要么是改成每次創(chuàng)建新的
    2) 要不就是去掉私有變量,而以參數(shù)形式重新構(gòu)造 
     

    在看到文中
    使得ActiveRecord是線程安全的了

    從而印證了自己的想法,得解

    posted on 2008-10-27 23:20 crazycy 閱讀(1201) 評論(1)  編輯  收藏 所屬分類: JavaEE技術(shù)

    評論

    # re: 讀“Rails 2.2 新特性提示”的疑惑與解析  回復(fù)  更多評論   

    單實例,就意味著不能多線程么?

    回答:并不是說不可以單例,只是在多線程下會存在:Double-checked Locking的問題。如果A,B在調(diào)用單例的瞬間,存在競爭條件。引用下google工程師Bob Lee的代碼:
    public class Singleton{
    static class SingletonHolder{
    static Singleton instance=new Singleton();
    }

    public static Singleton getInstance(){
    return Singleton.instance();
    }
    }
    2008-10-29 08:34 | yeshucheng
    主站蜘蛛池模板: 精精国产www视频在线观看免费| 国产a视频精品免费观看| 久久精品国产亚洲AV网站| 国产成人免费午夜在线观看| 亚洲精品无码永久在线观看男男| 亚洲免费日韩无码系列| 久久免费看黄a级毛片| 国产偷国产偷亚洲高清人| 亚洲精选在线观看| 国产gav成人免费播放视频| 无码免费一区二区三区免费播放| 亚洲人成人网站18禁| 亚洲好看的理论片电影| 国产精品色午夜视频免费看| 亚欧免费一级毛片| 免费人成视频在线播放| 亚洲人6666成人观看| 国产性爱在线观看亚洲黄色一级片| 猫咪社区免费资源在线观看| 成人免费一区二区三区| 亚洲av日韩av永久无码电影 | 伊人久久大香线蕉亚洲| 久久久久久久91精品免费观看| 九九热久久免费视频| 亚洲精品动漫免费二区| 亚洲黄色高清视频| 亚洲中文字幕无码一区 | 在线看片免费人成视频福利| 国产精品亚洲а∨无码播放 | 综合亚洲伊人午夜网 | 免费大黄网站在线看| 免费在线视频你懂的| 男女一边摸一边做爽的免费视频| 亚洲欧美综合精品成人导航| 久久精品国产亚洲77777| 亚洲熟妇无码AV在线播放| 国产乱弄免费视频| 午夜无遮挡羞羞漫画免费| 日本在线高清免费爱做网站| 久久综合国产乱子伦精品免费| 中国在线观看免费的www|