title: "**커널 객체를 이용한 쓰래드 동기화(3) - 대기가능 타이머**"
description: "**커널 객체를 이용한 쓰래드 동기화(3) - 대기가능 타이머**"
cleanUrl: /sw-engineer/thread-synchronization-waitable-timer
ogImage: ""
floatFirstTOC: right
제프리 릭터의 Programming Applications for Microsoft Windows. (4th Editon) 에 담긴 내용입니다.
HANDLE CreateWaitableTimer (
PSECURITY_ATTRIBUTES psa,
BOOL fManualReset,
PCTSTR pszName );
fManualReset : 수동 리셋(TRUE)인지, 자동 리셋(FALSE)인지의 여부
이벤트에서의 수동 리셋, 자동 리셋 기능과 동일
HANDLE OpenWaitableTimer (
DWORD dwDisiredAccess,
BOOL bInheritHandle,
PCTSTR pszName );
BOOL SetWaitableTimer (
HANDLE hTimer,
const LARGE_INTEGER *pDueTime,
LONG lPeriod,
PTIMERAPCROUTINE pfnCompletionRoutine,
PVOID pvArgToCompletionRoutine,
BOOL fResume );
// pDueTime : 타이머가 처음으로 울릴 시점
// lPeriod : 타이머가 울릴 시간 간격
// fResume : 잠시 대기(suspend)에서 재개(resume)을 지원하는 컴퓨터에서 쓰임. 보통은 FALSE로 많이 놓는다.
// pfnCompletionRoutine, pvArgToCompletionRoutine: 타이머가 신호 상태로 왔을 때에 실행될 프로시저의 함수 포인터와 매개변수. 타이머와 함께 APC(Asynchronous Procedure Call)을 사용할 경우 이용한다..