亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mts組件的創建過程.txt

?? C_C++技巧集
?? TXT
字號:
作者:獨孤九劍
email: mikaiyue@sina.com
日期:2001-7-4 19:50:40
[H3]MTS組件的創建過程[/H3]
				-- lostall([email]changming76@263.net[/email])
				
一個MTS組件的創建過程包含以下幾個步驟:
1。 一個客戶機為在MTS中注冊的COM對象調用CreateObject
2。 這個COM對象的注冊表設置表明它是一個MTS對象,所以創建交給MTS Executive(MTS執行者)
3。 COM運行時間將MTS Executive加載到MTS代理中,MTS代理是mts.exe
4。 MTS Executive加載COM DLL,并創建它的一個類廠實例。MTS還為這個類廠生成一個包裝程序
5。 然后MTS Executive創建Object Context(對象環境)和Context Wrapper(環境包裝)對象
    Context Wrapper實現真正務器對象請求的界面。
6。 MTS Executive將Context Wrapper對象指針返回客戶機。注意此時客戶機以為它創建一個
    組件對象實例,實際上并沒有創建對象。
7。 當客戶用得到的Context Wrapper對象指針調用組件的一個方法時,MTS Executive這時才從
    Object Context獲得類廠包裝程序,并真正的創建一個組件對象實例。客戶通過MTS執行者來
    調用組件對象實例的接口指針。
8。 MTS Executive調用COM組件的IObjectControl::Active函數以通知組件它已經被激活了,
    組件可以在這個時侯獲得它的Object Context指針。
9。 客戶方完成對組件的方法調用
10。組件對象根據方法調用的結果決定是提交還是中止,SetComplete or SetAbort。
11。MTS Executive調用組件的IObjectControl::Deactivate,并從Object Wrapper中刪除對
    象,把對象放入對象池中。注意客戶這時持有的組件接口指針并不為空,因為這個指針是
    MTS Executive對象指針,當然沒有釋放了。
12。當客戶再一次調用組件方法時,MTS Executive從對象池獲得一個對象,然后調用Active,
    然后在新的組件對象上完成方法調用。

如下圖所示:
http://comcamp.myrice.com/techarticles/images_1008/image1.jpg

注意:由上可見,客戶只有在調用了IObjectControl::Active之后,才標志真正得到了COM組
      件對象的指針,才能進行方法調用,在此之前都是假的。每次組件被激活都要重新得到
      IObjectContext指針,因為組件是從對象池取出來的,可能已經不是上一次用過的組件了。

其他:
1。 把組件加入到MTS時,可以選擇讓DLL在創建者進程中被激活。注意這個創建者進程不是指
  遠程的客戶機程序,對WEB應用來說,MTS的客戶機是IIS。
2。 當調用一個軟件包里的某個組件時,這個軟件包內的所有DLL都將被加載。如果其中有個DLL
    加載失敗,則整個調用失敗。
3。 一個交給MTS管理的COM DLL可以只是個普通DLL,既它不繼承IObjectControl,在它的程序
    里也沒有利用IObjectContext,盡管它可以通過GetObjectContext()得到對象上下文。該
    組件仍然可以從MTS中獲得比如JIT(既時激活)的功能。
    而一個一開始就設計成MTS組件的DLL則會從IObjectControl繼承,并得到對象上下文指針,
    從而可以MTS的一些功能,比如事務管理等。
4。 一個MTS組件如果想能調試的話,需要把這個組件所在的軟件包的激活類型改為庫應用程序。
5。 MTS中的連接點問題。
    看看這樣的調用順序:
    a.創建組件
    b.Advise建立連接
    c.調用組件某個方法
    d.斷絕連接,釋放組件
    跟蹤發現,在調用Activate時連接點并未建立,而調用組件的方法一時連接點已經建立了。
    這說明了在真正調用組件的方法時組件才被創建,所以b沒有效果,所以當調用Activate時
    不能使用連接點。當調用Activate結束后,再真正的建立起連接關系。
    執行d釋放組件時,如果組件具有池特性的話,組件并沒有真的被釋放,而是放到了對象池中,
    下次再創建時就直接從池中取出。因為連接先于釋放斷掉,所以COM+調用Deactivate()時也不
    能再利用連接點了。
6。 COM+中每個軟件包都是個應用程序,都是一個進程。可以設置是否在空閑時也啟動服務器進程,
    或者閑置幾分鐘就關閉服務器進程。要注意的是,啟動一個服務器進程是非常慢的。可以在
    Component Service中改變應用程序的這一設置,觀察它的運行狀態,以及不斷的創建組件來
    體驗創建速度與服務器進程是否處于運行中的關系。可以發現,若服務器進程在運行,則創建
    非常快,否則很慢。

    MTS組件的用法與COM+中的相關部分幾乎是一樣的,也許有一些細節不同。有的書上說MTS2.0不
支持對象池特性,MTS組件只能是Aparment型的。我沒有試過,不過COM+中如果組件要支持對象池的
話,最好是	Free或Neutral型,因為可能會有不同線程類型的客戶來使用它,這樣效率較高。也有
的書上說必須不能是Aparment型,但我做的試驗似乎并非如此。另外組件的創建過程也不一樣,COM+
中重寫了COM基礎設施,包括CoCreateInstance。創建時COM+要先判斷組件是否在COM+目錄中注冊,
既是否在Component Service中加入到一個Application中。如果注冊了的話就啟動Dllhost.exe,并
在它里面創建組件。MTS顯然不會是這樣,估計是在組件的AppID中設置了代理為mts.exe,這才啟動
mts.exe作為代理。我覺得既然COM+已經出來了,MTS慢慢地也就要退出歷史舞臺了,所以一切都應以
COM+為準,MTS不管它也罷。

    [I]本文內容參考《微軟電子商務解決方案》一書[/I]

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品少妇一区二区三区在线视频 | 国产伦精品一区二区三区免费| 国产一区日韩二区欧美三区| 日本精品视频一区二区| 久久网站热最新地址| 亚洲一区二区三区四区五区黄 | 日韩在线一二三区| 91在线一区二区| 国产丝袜美腿一区二区三区| 亚洲成人久久影院| 99精品视频在线播放观看| 日韩丝袜美女视频| 午夜在线电影亚洲一区| 91免费看视频| 中文字幕不卡的av| 国产精品伊人色| 日韩美女视频在线| 天天色 色综合| 欧美视频在线一区二区三区| 国产精品无码永久免费888| 狠狠网亚洲精品| 精品播放一区二区| 狠狠色狠狠色综合| 欧美成人精品福利| 另类成人小视频在线| 欧美成人一区二区三区在线观看| 夜夜操天天操亚洲| 欧洲精品一区二区三区在线观看| 中文字幕一区二区三区蜜月| 成人免费av在线| 国产精品丝袜久久久久久app| 国产精品夜夜嗨| 91.xcao| 在线国产电影不卡| 欧美三级中文字幕| 国产女同互慰高潮91漫画| 在线观看av一区| 国产酒店精品激情| 午夜精品成人在线| 一区二区视频在线| 国产精品你懂的在线| 欧美成人bangbros| 精品久久久影院| 亚洲亚洲人成综合网络| 一区二区三区日韩精品视频| 一本大道综合伊人精品热热| 亚洲天堂福利av| 欧美色图一区二区三区| 亚洲成人高清在线| 日韩欧美一级片| 韩国女主播一区| 国产精品久久免费看| 91美女在线视频| 日韩电影在线免费看| 欧美精品一区男女天堂| 盗摄精品av一区二区三区| 亚洲激情av在线| 欧美一级精品在线| www.在线成人| 亚洲国产精品视频| 久久久久久99久久久精品网站| 99久久精品费精品国产一区二区| 三级久久三级久久| 国产亚洲精品福利| 欧美视频在线一区二区三区| 精品亚洲免费视频| 亚洲蜜桃精久久久久久久| 欧美一级艳片视频免费观看| 成人av网站在线| 美女任你摸久久| 国产精品国产自产拍在线| 制服丝袜亚洲色图| 99精品视频在线播放观看| 免费观看日韩av| 一区二区三区国产豹纹内裤在线| 精品少妇一区二区三区在线播放 | 男人的天堂久久精品| 国产亚洲欧美一区在线观看| 欧美视频一区二区三区四区 | 在线视频国产一区| 国产乱对白刺激视频不卡| 亚洲一区二区三区在线看| 国产日韩欧美激情| 欧美一级在线视频| 欧美无砖专区一中文字| 成人午夜激情视频| 国产综合色视频| 青草国产精品久久久久久| 亚洲综合精品自拍| 国产精品久久三| 91精品国产高清一区二区三区蜜臀| 亚洲图片一区二区| 精品国产精品网麻豆系列| 69堂成人精品免费视频| 首页国产欧美日韩丝袜| 欧美一级二级三级蜜桃| 国产精品成人一区二区三区夜夜夜 | 精品国产乱码久久久久久老虎| 一卡二卡三卡日韩欧美| 欧美日韩亚洲丝袜制服| 粉嫩高潮美女一区二区三区 | 亚洲男人的天堂在线观看| 精品国产sm最大网站免费看| 欧美另类变人与禽xxxxx| 91在线一区二区三区| 成人av网站免费观看| 国产盗摄女厕一区二区三区| 蜜桃av一区二区在线观看| 日韩av电影一区| 婷婷国产在线综合| 亚洲午夜精品在线| 亚洲高清免费一级二级三级| 亚洲美女视频一区| 亚洲精品午夜久久久| 亚洲靠逼com| 亚洲综合免费观看高清完整版在线| 国产精品久久久久天堂| 国产精品午夜电影| 亚洲人吸女人奶水| 一区二区三区在线观看网站| 亚洲美腿欧美偷拍| 亚洲成av人片观看| 首页国产欧美久久| 精品亚洲国内自在自线福利| 国产在线国偷精品免费看| 国产成人精品免费网站| 成人国产精品免费网站| 欧美亚洲国产一区二区三区 | 99精品国产热久久91蜜凸| 99久久精品国产一区| 91久久精品日日躁夜夜躁欧美| 91网站在线观看视频| 在线一区二区视频| 欧美精品一卡两卡| 精品电影一区二区| 亚洲图片另类小说| 亚洲成av人片在线观看无码| 日本不卡在线视频| 成人福利视频在线看| 欧美色精品在线视频| 日韩免费电影网站| 国产精品国产三级国产| 日日夜夜免费精品| 国产91清纯白嫩初高中在线观看| 91蝌蚪porny| 日韩一级视频免费观看在线| 欧美激情一区不卡| 亚洲成人激情av| 国产传媒日韩欧美成人| 欧美亚洲免费在线一区| 久久久五月婷婷| 一区二区三区中文字幕精品精品 | 亚洲一区二区三区在线播放| 秋霞午夜av一区二区三区| 成人v精品蜜桃久久一区| 欧美日韩久久久久久| 国产精品国模大尺度视频| 亚洲精品视频在线| 欧美成人精品福利| 蜜臀av一区二区在线免费观看| 国产在线国偷精品产拍免费yy| 91丝袜高跟美女视频| 97aⅴ精品视频一二三区| 日韩一二三区视频| 成人欧美一区二区三区| 日韩avvvv在线播放| 91免费在线看| 中文字幕av资源一区| 国内外成人在线| 日韩欧美你懂的| 天堂av在线一区| 不卡一二三区首页| 久久久精品天堂| 日韩国产高清影视| 色婷婷久久久综合中文字幕 | 国产成人在线视频免费播放| 色八戒一区二区三区| 国产午夜亚洲精品不卡| 日韩精品一卡二卡三卡四卡无卡| 99国产精品久久久久久久久久久| 欧美变态tickle挠乳网站| 亚洲成人自拍网| 在线观看一区不卡| 亚洲精品国产成人久久av盗摄| 国产精品1024| 久久精品男人的天堂| 国产精品综合网| 欧美成人三级电影在线| 青青草97国产精品免费观看无弹窗版| 色哟哟一区二区| 亚洲色图.com| 色一情一伦一子一伦一区| 中文字幕亚洲在| 91原创在线视频| 亚洲美女视频在线观看| 91看片淫黄大片一级| 亚洲在线中文字幕| 欧美喷水一区二区| 日韩国产欧美一区二区三区| 日韩欧美一区电影|