NLog - 동적으로 로그 파일 이름 설정하기

NLog는 동적으로 파일 이름을 설정할 수 있는 기능이 있다. 아래의 방법은 커스텀 플레이스 홀더를 설정하고, 그 플레이스 홀더에 임의의 텍스트를 설정하는 방법으로 파일 이름을 변경한다. NLog.config <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <targets> <target name="LogFile" xsi:type="File" layout="${longdate} [${uppercase:${level:padding=-5}}] ${message}...
더 읽기

2017년 04월 ‘온라인 서버 제작자 모임’ 정기 세미나

한국 MS의 멜팅팟 프로그램 지원을 받고 ‘온라인 서버 제작자 모임’에서 4월 정기 모임을 합니다. 날짜: 4월 26일(수요일) 19시 30분 ~ 21시 30분 장소: 토즈 강남점 내용 Visual Studio 2017 Linux development with C++ (최흥배) https://channel9.msdn.com/events/Connect/2016/119 위 동영상 설명하면서 같이 보기...
더 읽기

C# - 꼬리 재귀 최적화

// 꼬리 재귀가 아니다 long SumNormal(long n) { if (n <= 0) return 0; return SumNormal(n - 1) + n; } // 꼬리 재귀 long SumTailCall(long n) { return SumTailCallAcc(n, 0); } long SumTailCallAcc(long n, long acc) { if (n...
더 읽기

NHN Next 게임서버 수업 실습용 채팅서버 소스 코드

NHN Next의 2016 ~ 2017년 게임서버 과정 수업에서 실습으로 만드는 채팅 서버 코드이다. Github Windows 플랫폼만 지원(Linux 지원 어렵지 않음) 64 비트 지원 C++ 로 구현 Visual Studio 2017 select 기반.동기 IO DB 연동은 구현 되지 않음. 로비 채팅, 방...
더 읽기

Visual Studio - 툴 박스에 코드 보관하기

VS의 툴박스에 특정 코드를 보관하고, 이 코드를 선택하여 코딩 시 삽입할 수 있다. 툴박스에 보관하기 바라는 코드를 마우스로 선택 후 툴박스로 드래그 한다. 위에서 드래그한 코드가 툴박스에 들어가 있는 것을 볼 수 있다. 추가한 코드를 마우스 오른쪽 클릭하면 삭제, 수정...
더 읽기

C99의 sizeof와 가변길이 배열

C99 에서는 배열의 사이즈 지정에 변수를 사용할 수 있다. void test1( int n ) { int fixed_array[10]; int varlen_array[n]; printf( "sizeof(fixed_array)==%ld\n", sizeof(fixed_array) ); printf( "sizeof(varlen_array)==%ld\n", sizeof(varlen_array) ); } test1(10); 로 인수를 10으로 해서 호출하면 아래와 같다. sizeof(fixed_array)==40 sizeof(varlen_array)==40 그러나 보통의...
더 읽기

C++14 - shared_(timed_)mutex가 지원하는 Reader 스레드 수

C++14 표준 라이브러리의 shared_timed_mutex 클래스는 적어도 10000 스레드 이상의 Reader 스레드에서의 공유 lock(shared lock) 동시 획득을 지원한다. 또 동시 획득 가능한 공유 lock 수 상한을 넘은 경우도 공유 lock을 획득 할 수 있을 때까지 Reader 스레드가 대기하는 것을 보증한다. 출처:...
더 읽기

C++14 - recursive_(timed_)mutex의 재귀 lock 상한 수

C++11 표준 라이브러리의 recursive_mutex, recursive_timed_mutex 클래스는 동일 스레드에서의 재귀 lock 획득 횟수의 상한은 미정의로(unspecified) 되어 있다. 단 상한 회수를 넘는 try_lock 조작은 실패하고, lock 조작은 예외를 던지는 것을 보증 한다. 출처: http://d.hatena.ne.jp/yohhoy/20170214/p1
더 읽기