C#

4개의 글
thumbnail

.NET WeakReference는 pinned 되지 않는다

C# 게임 서버를 프로파일링하고 성능을 개선하는데 아래 블로그가 많이 도움이 되었다. C# 고성능 서버 - 메모리 단편화 | leafbird/devnote 위 글의 내용에는 WeakReference가 메모리 pinning을 만든다는 부분이 있었는데, ...

thumbnail

.NET 배열 공변성으로 인한 성능 고려사항

공변성(Covariance)은 처음 들었을 때 어려운 용어같지만, '~를 따라 같이 변할 수 있는 성질'이라는 간단한 의미이다. 예를 들어 A라는 타입이 B라는 타입으로 바뀔 수 있을 때, 여기에서 파생되는 C<A> 타입이 C<B>...

thumbnail

.NET Sealed 클래스 성능 고려사항

C#에는 더 이상 상속할 수 없음을 나타내는 sealed 키워드가 있다. 프레임워크를 개발하거나 할 때 sealed를 붙여서 상속을 금지해, 이를 사용하는 개발자가 잘못된 확장하는 것을 막을 수 있다. 다만 .NET 디자인 지침에서는 확장성을 위해 s...

thumbnail

.NET에서 DateTime 후킹으로 시간 속이기

개발하다 보면 테스트 목적으로 시간을 변경해야 하는 필요가 생길 때가 있다. Windows 경우 보통 제어판에서 시간을 바꿀 수 있고, 실행되어있는 프로그램에도 바로 바뀐 시간이 적용된다. 하지만 회사 정책으로 시간 변경이 막혀있거나, 실행 중인 서버...