7
我有兩個.NET庫:「Foo.Bar」和「Foo.Baz」。
「Foo.Bar」是獨立的,而「Foo.Baz」引用「Foo.Bar」。.NET ILMerged程序集的性能
假設我執行以下操作:
- 使用ILMerge以 「Foo.Bar.dll」 合併爲 「Foo.Baz.dll」 到 「Foo1.dll」。
- 創建一個包含「Foo.Bar」和「Foo.Baz」(因爲我可以訪問它們的源代碼)的純度的新解決方案,並將其編譯爲「Foo2.dll」。
從外部項目中使用它們的功能時,Foo1.dll和Foo2.dll的性能有任何差異嗎?如果是這樣,這種性能差異有多重要,是一次性的(負載?)還是持續的差異?兩種方法是否有其他優點或缺點?
爲什麼它不會產生完全相同的IL?爲什麼ILMerge必須發佈新的IL? – 2010-04-22 06:16:15
IL的大部分將是相同的,但ILMerge確實做了一些轉變。其中一些可以像合併類型定義一樣進行配置。其中一些與裝配級屬性有關。我認爲它可以改變類型的可見性等 – Josh 2010-04-22 06:25:47
這些都不會影響裝配的性能,請注意。 – Josh 2010-04-22 06:26:19