将调用密集型的 COM 组件迁移到托管代码
生活随笔
收集整理的這篇文章主要介紹了
将调用密集型的 COM 组件迁移到托管代码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
.NET Framework 提供了一個簡單的方法與傳統的 COM 組件進行交互。其優點是可以在保留現有投資的同時利用新的平臺。但是在某些情況下,保留舊組件的性能開銷使得將組件遷移到托管代碼是值得的。每一情況都是不一樣的,決定是否需要遷移組件的最好方法是對 Web 站點運行性能測量。建議您研究一下如何將需要大量調用以進行交互的任何 COM 組件遷移到托管代碼。
許多情況下不可能將舊式組件遷移到托管代碼,特別是在最初遷移 Web 應用程序時。在這種情況下,最大的性能障礙之一是將數據從非托管環境封送到托管環境。因此,在交互操作中,請在任何一端執行盡可能多的任務,然后進行一個大調用而不是一系列小調用。例如,公共語言運行庫中的所有字符串都是 Unicode 的,所以應在調用托管代碼之前將組件中的所有字符串轉換成 Unicode 格式。
許多情況下不可能將舊式組件遷移到托管代碼,特別是在最初遷移 Web 應用程序時。在這種情況下,最大的性能障礙之一是將數據從非托管環境封送到托管環境。因此,在交互操作中,請在任何一端執行盡可能多的任務,然后進行一個大調用而不是一系列小調用。例如,公共語言運行庫中的所有字符串都是 Unicode 的,所以應在調用托管代碼之前將組件中的所有字符串轉換成 Unicode 格式。
另外,一處理完任何 COM 對象或本機資源就釋放它們。這樣,其他請求就能夠使用它們,并且最大限度地減少了因稍后請求垃圾回收器釋放它們所引起的性能問題。
總結
以上是生活随笔為你收集整理的将调用密集型的 COM 组件迁移到托管代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在 Visual Basic .NET
- 下一篇: 避免单线程单元 (STA) COM 组件