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

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

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

    posts - 38, comments - 9, trackbacks - 0, articles - 1

    參加.Net培訓筆記二

    Posted on 2005-04-11 12:31 大阿福 閱讀(312) 評論(0)  編輯  收藏

    GC:collect the isolated object in the shared heap.
    machinism:
    1.When we create an new object in the shared heap, if the memory size of the shared heap can't fit the new object, CLR will invoke the GC.
    2.GC will wait until all the .NET apps in the same computer pends.
    3.GC creates a list of all the referenced objects in the shared heap.
    In addition, GC will add all the object with destructor to the list.
    GC will create a new array named FReachable, and add all those objects with destructor to this array.

    4.GC moves all the referenced objects to the bottom of the shared heap.
    5.GC updates all the referenced objects's pointer.
    6.CLR will execute all the destructor of the objects in the FReachable. After exected, CLR will reset the destructer's flag.

    when will the GC execute the destructor?

    1.Destructor
    2.Dispose(reset destructor's flag)

    using  -> invoke Dispose() method.


    Assembly deployment:

    How does CLR load an assembly?
    CLR(Class loader)
    1. CLR looks for a config file(app.exe.config).
    2. CLR will look for the assembly from the path that the app config file defines. -> internet(http://www.founder.com/a.dll), private path(bin;app\bin;app\dll)
    3. If not find, CLR will look for the GAC(Global Assembly Cache).
    4. If not find, CLR will look for the executing folder.

    CLR(Exception Manager)
    TestDep, Version=1.0.1925.15891, Culture=neutral, PublicKeyToken
    1. AssemblyName
    2. Version Number
    3. Culture Information
    4. PublicKeyToken

    Deployment path:
    1. Execution folder
    2. Config folder
    1)Internet config: <codeBase>
    2)private path: <probing>
    <configuration>
       <runtime>
          <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
             <probing privatePath="bin;bin2\subbin;bin3"/>
          </assemblyBinding>
       </runtime>
    </configuration>

    3. GAC:
    precondition:
    1)strong name: CLSID/PrgID
    a pair asyncArithmatic key.
    TestDep, Version=1.0.1925.15891, Culture=neutral, PublicKeyToken

    sn.exe

    2)version number

    gacutil.exe

    1. verion control:

    verion redirect. <bindingRedirect>
    <configuration>
       <runtime>
          <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
           
               <probing privatePath="v1.1\Debug"/>
    <dependentAssembly>
                <assemblyIdentity name="TestDep"                          publicKeyToken="5ad115fe5d425e50"/>
                <bindingRedirect oldVersion="1.0.0.0"
                                 newVersion="1.1.0.0"/>
             </dependentAssembly>
         
          </assemblyBinding>
       </runtime>
    </configuration>


    native images: NGen.exe

     


    2. install package:

    installshield

    .NET Framework redistributed

    Custom action in the process of installation!

     

    zh-cn

     
    Assembly reflection:
    1) read resouce file from assembly.
    2) get types from assembly.
    3) create object dynamic from the assembly.

    .NET Event:
    Delegate -> a anoymouse function pointer

    int/double... -> System.Int32/Double
    delegate    -> Delegate

    overload operator +

    Data Type -> .NET Framework struct/class

    Common Type System: CTS
    1)value type: stack
    value copy.
    structure

    2)reference type: shared heap
    pointer copy.


    Change Data Type:
    1)implicity convertion: int16 -> int32 -> int64
    short -> long

    2)
    long -> short

    3)different type convertion:
    any type -> string: ToString()
    string -> other type: Parse()

    anytype <-> object: boxing/unboxing


    4)System.Convert class


    lab:
    1. create install package, add custom action. record the username and company information in a file during the installation process.
    2. create a reflection application, can be runned as a unit tester.
    3. create a component with an event.


    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     
    主站蜘蛛池模板: 无码日韩精品一区二区免费| 国内永久免费crm系统z在线| 毛片视频免费观看| 亚洲国产品综合人成综合网站| 57pao一国产成永久免费| 亚洲黄色片免费看| 亚洲黄色免费观看| 色老板亚洲视频免在线观| 91情侣在线精品国产免费| 在线aⅴ亚洲中文字幕| 精品剧情v国产在免费线观看| 亚洲国产精品无码久久九九大片 | 黄网站免费在线观看| 久久精品国产亚洲AV麻豆不卡| 一区二区三区四区免费视频| 亚洲精彩视频在线观看| 亚洲第一成年免费网站| 亚洲乱码国产乱码精华| 亚洲精品A在线观看| 九九美女网站免费| 亚洲婷婷在线视频| 最新69国产成人精品免费视频动漫 | 久久精品人成免费| 亚洲一区二区三区免费在线观看| 毛片免费视频观看| 免费国产高清毛不卡片基地| 亚洲精品无码MV在线观看 | 国产成人久久AV免费| 亚洲成AV人片久久| 亚洲av手机在线观看| a在线视频免费观看| 亚洲国产综合第一精品小说| 国产真人无遮挡作爱免费视频| 一个人看的免费高清视频日本| 亚洲嫩模在线观看| 成人国产mv免费视频| 最近免费字幕中文大全| 中文字幕在线观看亚洲视频| 亚洲伊人久久成综合人影院| 久久精品亚洲中文字幕无码网站 | 免费中文字幕一级毛片|