개발일지

자동저장 구현

ljw4104 2021. 4. 2. 10:43

1. While문으로 계속 돌려주면서 저장하기

  • 제일 무식한 방법이고 제일 쉽다.
  • Thread에 while 무한루프를 돌리면서 일정시간마다 저장하는 방식이다.
  • 단점으로는 기본 프로세스가 종료해도 스레드가 계속 프로세스에 남아 돌아갈 가능성이 있으므로 처리를 잘 해줘야된다.
while (true)
{
    save();
    Thread.Sleep(i * 1000 * 60);	//i분마다 저장
}

2. Application이 종료될 때 저장

  • 앱이 종료될 때, AppDomain.GetCurrent.ProcessExit이라는 이벤트가 호출이된다.
  • Visual Studio를 킬 때, 관리자권한으로 실행하는게 함수 정확성을 높여준다. (권한 때문에)
  • 아직 안써봐서 단점은 모름
AppDomain.GetCurrent.ProcessExit += SaveAll;