Proud::CMiniDumper 클래스 참조
Proud::CMiniDumper에 대한 상속 다이어그램 :

Public 멤버 함수

PROUD_API void ManualFullDump ()
 
PROUD_API void ManualMiniDump ()
 

정적 Public 멤버 함수

static MiniDumpAction Startup (const CMiniDumpParameter &parameter)
 
static PROUD_API void WriteDumpFromHere (const PNTCHAR *fileName, bool fullDump=false)
 
- Proud::CSingleton< CMiniDumper >(으)로부터 상속된 정적 Public 멤버 함수
static _Noinline PtrType GetSharedPtr ()
 
static CMiniDumperGetUnsafeRef ()
 

추가로 상속된 멤버들

- Proud::CSingleton< CMiniDumper >(으)로부터 상속된 Public 타입
typedef RefCount< CMiniDumperPtrType
 

상세한 설명

미니 덤프 모듈

특징

  • 이 객체는 서버 크래쉬 발생시 .DMP 파일을 만든다.
  • .DMP 파일은 visual studio.net에서 직접 열어서 오류 위치를 추적하는데 도움이 된다.
  • 동시 다발적으로 여러 스레드에서 unhandled exception이 발생해도 최초 1회에 대한 덤프 파일만 생성된다. 나머지 스레드는 덤프가 끝날때까지 대기한다. 그래야 덤프중에 프로세스가 딴 문제가 생기지 않는다.

일반적 용도

  • 이 객체는 싱글톤이다. 일단 이 객체의 Delegate를 지정함으로 JIT creation이 된다. Delegate 지정은 Init()로 한다. 이후부터는 프로그램 오류시 덤프 프로그램이 작동한다.
  • 수동 미니 덤프를 생성은 Dump()로 한다.

멤버 함수 문서화

PROUD_API void Proud::CMiniDumper::ManualMiniDump ( )

유저 호출에 의해 미니 덤프 파일을 생성한다.

static MiniDumpAction Proud::CMiniDumper::Startup ( const CMiniDumpParameter parameter)
static

초기화 함수입니다.

매개변수
cmdLine앱의 Command-Line argument의 인자를 넣어주시면 됩니다.

ProudNet은 앱에서 오류 발생 시, 앱 자신을 새로운 프로세스로 실행합니다. 이 때, Startup 함수에서 인식할 수 있는 특수 구문을 Commad Line Argument에 추가하여 새로운 프로세스를 실행하게 됩니다.

이 함수는 Win32 응용 프로그램 및 MFC 응용프로그램에서 호출하시면 됩니다.

void main(int argc, char* argv[])
{
...
CMiniDumpParameter parameter;
switch(CMiniDumper::GetSharedPtr()->Startup(parameter))
{
// 오류 발생으로 새로운 프로세스에서 덤프 파일을 생성한 후, 이 값이 return이 됩니다.
// 생성된 덤프 파일을 메일로 보내거나 에러 창을 보이는 등 유저가 덤프 파일 생성 후, 처리해야할 작업을 처리해주시면 됩니다.
...
break;
// 유저 호출로 새로운 프로세스에서 덤프 파일을 생성한 후, 이 값이 반환됩니다.
// 이 경우에는 아무것도 하지 말아야합니다.
break;
default: // MiniDumpAction_None
// 일반적으로 앱 실행 시, 이 값이 반환됩니다.
// 여기서는 일반적으로 처리해야할 일을 처리해주시면 됩니다.
...
break;
}
}
static PROUD_API void Proud::CMiniDumper::WriteDumpFromHere ( const PNTCHAR *  fileName,
bool  fullDump = false 
)
static

이 함수를 호출한 시점에서의 프로세스 상태를 덤프 파일로 남긴다.

매개변수
fileName덤프 파일 이름. 확장자는 dmp로 지정할 것.