• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 優化之路:精簡VB中的分段應用程序

    發表于:2007-05-25來源:作者:點擊數: 標簽:優化分段之路應用程序精簡
    1.部件可在需要時加載,不需要時卸載。 2.在Win95或WinNT下,即使應用程序的其他部分為16位部件,跨進程的部件也可以是32位的執行程序。 3.遠程部件可使用 網絡 上其他機器的資源。 另外,部件可被單獨調試并可在其他應用程序里重用。在確定如何使用分段技術
     1.部件可在需要時加載,不需要時卸載。

      2.在Win95或WinNT下,即使應用程序的其他部分為16位部件,跨進程的部件也可以是32位的執行程序。

      3.遠程部件可使用網絡上其他機器的資源。

      另外,部件可被單獨調試并可在其他應用程序里重用。在確定如何使用分段技術來優化應用程序之前,必須估計到能創建的部件類型和怎樣適合應用程序。使用VB專業版和企業版,能創建以下三類部件:

      1.跨進程部件

      2.進程內部件

      3.遠程部件

      三種類型并不互相排斥,可以在一個應用程序里同時使用這三類部件,但從優化應用程序的觀點看,它們又各有極不相同的特性。

      一、跨進程部件是一個可執行程序,它可向其他程序提供服務,像其它的可執行程序一樣,啟動后,在自己的進程空間有自己的堆棧。因此,當客戶使用應用程序提供的對象時,操作將從客戶的進程空間轉到部件的進程空間。

      與其他類型相比,跨進程部件提供了一些很有價值的特點:

      1.異步操作(“線程”)。

      2.部件不能捕獲的錯誤不會導致調用應用程序崩潰。

      3.可在16位和32位應用程序之間相互操作。

      從優化觀點看,第一點和第三點最有意義。因為跨進程部件是一個分離的程序,可以與作為客戶端的部件異步操作。它有一個單獨的“線程”,與客戶程序構成多任務(從技術角度上講,這不是線程,而是一個分離的進程;但從概念上看,二者等價)。兩個程序可相互通訊并共享對象。在應用程序執行一些費時的操作時,異步操作就特別有用??蛻艨上日{用部件執行該項操作,而后繼續響應用戶。

      即使慣用的16位應用程序或部件在32位系統上運行,也可以不必立即將它們改為32位。若使用跨進程部件將應用程序分段時,則可將16位和32位部件混合在一起并互相協調。這有助于充分利用32位部件特性,并保護在16位部件上的投資。

      考慮它們所有的能力,跨進程部件都有一個明顯的缺點:性能。以下幾點可顯現這些不足:

      1.啟動速度慢

      2.跨進程調用的開銷大

      跨進程部件是一個由VB創建的執行程序,因此,與應用程序的啟動相關的問題也同樣存在。當從另一個VB程序中調用在VB中寫的跨進程部件時,幾乎所有的支持DLL已經被加載,這就大大縮短了啟動部件的時間。許多部件比VB應用程序的平均規模還小,它們具有很少或根本沒有要加載的窗體,這又進一步縮短了加載時間。然而,跨進程部件啟動還是要比進程內部件慢。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>