문제

그리고 내 코드에서 왜 다른 것을 사용합니까?

도움이 되었습니까?

해결책

주의:이 답변은 오래된 것 같습니다. 이는 .NET 4가 출시되기 전에 게시되었으며, 이에 대한 일부 최적화가 도입된 것으로 보입니다. Type 따라서 이 답변의 정보가 더 이상 사용되지 않게 되었습니다.보다 이 최신 답변 자세한 내용은.

에 따르면 Vance Morrison이 작성한 이 블로그 게시물(2006년), RuntimeTypeHandle 값 유형입니다(struct) 관리되지 않는 포인터를 래핑하므로 Type.GetTypeHandle(obj).Equals(anotherHandle) 엄격한 "정확히 동일한 유형" 비교에 사용하는 것이 더 빠릅니다. obj.GetType().Equals(anotherType) — 후자가 생성 System.Type 분명히 더 무거운 사례입니다.

그러나 덜 명확하고 확실히 "미세 최적화" 범주에 속하므로 둘 중 하나가 필요할 때 궁금하다면 System.Type을 사용해야 할 것입니다.

다른 팁

.NET 4.0 베타 1에서 RuntimeTypeHandle 그냥 포장 RuntimeType.저렴하게 사용하면 모든 장점이 있는 것 같아요 Type 프록시가 사라졌습니다.

위 주장에 대한 증거:

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top