C#으로 대규모 모바일 게임 서버 만들기- ASP.NET Web API와 NoSQL

작년에 할 예정이었던 강의이었지만 수강자 부족으로 열리지 못했습니다. (작년에 하반기 예정했던 강의가 수강자 부족으로 모두 열리지 못했습니다) 제가 Next에서의 계약이 끝나서 구직 중이라 지금 잠깐 시간이 날 때 강의를 하려고 합니다. 유료 강의는 진행하기 쉽지 않은 것 같아서 이런 류의...
더 읽기

C++ - EASTL

GitHub EASTL 게임 회사 EA에서 오픈 소스로 공개한 것으로 C++ STL을 게임 개발에 맞게 고친 STL 이다. 크로스플랫폼을 지원하고 Visual Studio 2017을 지원한다. 빌드는 Cmake를 사용한다. 관련 글 일어로 된 글은 네이버 번역기로 보면 된다. EASTL - 할당자(allocator) http://ohyecloudy.com/pnotes/archives/250/ EASTL...
더 읽기

C++ - Visual C++ 에서의 std::chrono의 고해상도 시계

Visual Studio 2015 이전에는 std::chrono(high_resolution_clock을 사용해도)로 시간 측정을 하면 nano 단위로는 측정할 수 없었다. 그래서 VC에서 nano 단위로 측정하려면 이전처럼 Win32 API인 PerformanceCounter를 사용해야 했다. 그러나 Visual Studio 2015부터는 nano 단위의 측정이 가능하다. #include <iostream> #include <chrono> #include <typeinfo> #include...
더 읽기

C++ - null 객체의 멤버 함수 호출

클래스를 메모리 할당(new 생성)하지 않고 생성한 후 멤버 함수를 호출하면 어떻게 될까? 호출된 멤버 함수가 자신의 멤버 변수를 호출하지 않는다면 무사히 호출된다. 당근 멤버 변수를 호출하면 세그먼트폴이 생긴다. 아래 코드는 gcc 8.0 에서 테스트 되었다. VC에서도 문제 없이 되는 것으로...
더 읽기

.NET의 모든 병렬 컨테이너는 lock-free 인가?

FAQ :: Are all of the new concurrent collections lock-free? 의 글을 일부 번역/정리. (이 대답은 .NET Framework 4를 기반으로 한다. 아래의 세부 정보는 문서화 되지 않은 구현 세부 사항이므로 향후 릴리스에서 변경 될 수 있다.) 새로운 System.Collections.Concurrent 네임 스페이스의...
더 읽기

영어로 기술 문의를 할 때의 영작문 Tips

첫 번째: 자신이 하고 싶은 것과 문제를 간결하게 설명한다 영어는 짧고 알기 쉽게 간단하게 설명하는 것이 매우 중요하다. 나는 가급적 직접 만든 템플릿에 맞추어 자신의 하려고 하는 것과 발생한 문제를 설명하도록 한다. I tried to $자신의 하고 싶은 일 however...
더 읽기

C++ - SSO(Small-string optimization)

보통 std::string는 문자열을 확보할 때 동적으로 메모리를 확보하지만 작은 크기의 문자열의 경우는 동적 할당은 성능적으로 낭비이므로 동적 할당을 하지 않는 최적화가 구현 되어 있고 이것을 SSO 라고 한다. 아래처럼 std::string 안에 문자열을 저장할 수 있는 버퍼를 가진다. class string{ char...
더 읽기