Microsoft MVP성태의 닷넷 이야기
Assembly loading failure is expensive [링크 복사], [링크+제목 복사],
조회: 11370
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Assembly loading failure is expensive
http://blogs.msdn.com/junfeng/archive/2005/12/20/505832.aspx



Assembly loading failure is expensive

Assembly loading failure is very expensive.

 

  1. CLR will need to probe all the possible places before giving up. This is a lot of disk I/Os. If the application base is in UNC share or http, the performance will be much worse.
  2. If CLR can’t find anything by probing, CLR will ask Windows Installer to see if Windows Installer can provide the assembly. This process can be very expensive, depending on how many managed applications are installed on the machine.
  3. After everything is failed, CLR will raise AssemblyResolve event. The time spend is the AssemblyResolve event handler is essentially unbounded.

 

If you want to build a performant .Net framework application, you should minimize assembly loading failures as much as possible.

 

(Unfortunately due to resource fallback, there are lots of by-design assembly loading failures from resource manager.)








[최초 등록일: ]
[최종 수정일: 4/14/2006]


비밀번호

댓글 작성자
 



2005-12-20 10시16분
IE 임베딩된 형태의 스마트 클라이언트 활성화가 늦는 이유.
kevin25

... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
213정성태4/13/200611139Introduction to the MSN Messenger Activity SDK
212정성태4/13/200613191FIN_WAIT_2 상태에 대하여
211정성태4/13/200611772Override CLR Assembly Probing Logic
210정성태4/13/200612191Web.config의 기본 <appSettings /> Handler 교체
209정성태3/25/200612043Win32 FileID API Library
208정성태4/13/200611562(거의)모든 DB 에 대한 ADO.NET Data Provider (유료)목록
205정성태4/13/200611696Static Code Analyzer
206정성태4/13/200611390    답변글 Visual C++ Express를 사용한 보안 응용 프로그램 빌드
203정성태4/13/200611099WGF (Windows Graphic Foundation) [1]
202정성태4/13/200611175사용자 컴퓨터 환경 조사 결과(외국 사례)
201정성태4/13/200616495MySQLDirect .NET Data Provider
207정성태4/13/200610653    답변글 무료: Download Connector/Net 1.0 (MySQL) [1]
200정성태4/13/200611149Understanding Classic COM Interoperability With .NET Applications파일 다운로드1
199정성태4/13/200611510How to get a V2.0 ICorDebug object
198정성태4/13/200611499Whidbey breaking change --- Caching binding failures [1]
197정성태4/13/200610881The JIT does dead-code elimination in Debuggable code
195정성태4/13/200610841910442 - Working with Web Resources in ASP.NET 2.0
194정성태4/13/200611463ASP.NET 2.0 WebPart - SQL Server Error 26: Error Locating Server/Instance Specified
193정성태4/13/200611518WCF - Breaking Changes between Jan CTP and Feb CTP파일 다운로드1
192정성태4/13/200610995Cassini Update
191정성태4/13/200612049LeechBlocker ISAPI Filter
189정성태4/13/200611242The New Anonymous Types Feature in C# 3.0 [1]
188정성태3/8/200611368Microsoft Anti-Cross Site Scripting Library V1.0
196정성태4/13/200610813    답변글 왜 사용해야 하는가?
187정성태4/13/200610752제 1회 INETA 세미나
186정성태4/13/200611310Internet Information Services (IIS) 6.0 Manager for Windows XP
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...