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

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

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

    keep moving!

    We must not cease from exploration. And the end of all our exploring will be to arrive where we began and to know the place for the first time.
    隨筆 - 37, 文章 - 2, 評論 - 3, 引用 - 0
    數據加載中……

    Design Pattern: Future 模式

    Future模式可以簡單的看成是 Proxy 模式Thread-Per-Message 模式 的結合,在Proxy模式中,用一個Proxy來代替真正的目標(Subject)生成,目標的生成可能是費時的,例如在開啟一個內嵌圖片的文件中,希望程式能儘快完成開啟文件的動作,並顯示一個可接受的畫面給使用者看,在還不需要看到圖片的頁面中先使用Proxy代替真正的圖片載入,只有在真正需要看到圖片時,才由Proxy物件載入真正的圖片。

    考慮這樣一個情況,使用者可能快速翻頁瀏覽文件中,而圖片檔案很大,如此在瀏覽到有圖片的頁數時,就會導致圖片的載入,因而造成使用者瀏覽文件時會有停頓的現象,所以我們希望在文件開啟之後,仍有一個背景作業持續載入圖片,如此使用者在快速瀏覽頁面時,所造成的停頓可以獲得改善。

    Future模式在請求發生時,會先產生一個Future物件給發出請求的客戶,它的作用就像是Proxy物件,而同時間,真正的目標物件之生成,由一個新的執行緒持續進行(即Thread-Per-Message),真正的目標物件生成之後,將之設定至Future之中,而當客戶端真正需要目標物件時,目標物件也已經準備好,可以讓客戶提取使用。

    Future

    一個簡單的Java程式片段示範可能像是這樣:
    ....
     public Future request() {
        final Future future = new Future();

        new Thread() {
            public void run() {
                // 下面這個動作可能是耗時的
                RealSubject subject = new RealSubject();
                future.setRealSubject(subject);
            }
        }.start();

        return future;
     }


    張金鵬 2007-04-17 10:57 發表評論

    文章來源:http://www.tkk7.com/jesson2005/articles/111199.html

    posted on 2008-09-07 11:06 大石頭 閱讀(158) 評論(0)  編輯  收藏 所屬分類: 多線程

    主站蜘蛛池模板: 国产亚洲av片在线观看18女人| 羞羞网站免费观看| 亚洲av永久无码精品漫画| 国产一精品一AV一免费孕妇| 黄色网站软件app在线观看免费| 日韩亚洲人成在线综合| 亚洲一本之道高清乱码| 亚洲国产精品线在线观看| 午夜亚洲福利在线老司机| 毛片a级毛片免费观看品善网| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 国产jizzjizz免费视频| 69堂人成无码免费视频果冻传媒| 成人无码a级毛片免费| 色多多A级毛片免费看| 日本系列1页亚洲系列| 精品无码专区亚洲| 亚洲人成自拍网站在线观看 | 69精品免费视频| a级大片免费观看| 日日躁狠狠躁狠狠爱免费视频 | 国产精品免费综合一区视频| 久久精品a一国产成人免费网站 | 亚洲日本一线产区和二线| 亚洲国产成人九九综合| 亚洲第一永久在线观看| 亚洲美女一区二区三区| 老色鬼久久亚洲AV综合| 亚洲自偷自偷精品| 精品日韩亚洲AV无码一区二区三区 | 亚洲国产午夜精品理论片| 亚洲精品国产专区91在线| 久久久久亚洲精品日久生情| 久久99亚洲网美利坚合众国| 亚洲精品欧洲精品| 亚洲国产成人精品无码区在线网站| 亚洲乱码日产精品BD在线观看| 激情五月亚洲色图| 亚洲第一成年网站视频| 无码日韩人妻AV一区免费l| 一区二区三区免费在线视频|