COMMTIMEOUTS Structure
이 구조체는 SetCommTimeouts와 GetCommTimeouts 함수에서 사용되고 통신 장치의 타임아웃 매개변수가 들어 있음
이 매개변수는 장치의 ReadFile와 WriteFile 함수 작업의 행동을 결정함
typedef struct _COMMTIMEOUTS {
DWORD ReadIntervalTimeout;
DWORD ReadTotalTimeoutMultiplier;
DWORD ReadTotalTimeoutConstant;
DWORD WriteTotalTimeoutMultiplier;
DWORD WriteTotalTimeoutConstant;
} COMMTIMEOUTS,*LPCOMMTIMEOUTS;
ReadIntervalTimeout
- 통신라인에 한 문자를 수신 한 후 다음 문자를 수신할 때까지 걸리는 최대허용시간 지정(밀리초 단위)
- ReadFile 작업 동안 첫번째 문자를 받은 후 시간이 시작됨
- 시간이 초과되면 ReadFile 함수는 완료되며, 버퍼의 데이터는 반환됨
- 0 값이면 time-outs을 사용하지 않음
ReadTotalTimeoutMultiplier
- 읽기 작업을 위한 토탈 타임아웃 시간을 계산하기 위해 밀리초 단위의 곱하기 계수 지정
- 각각의 읽기 작업은 요청한 읽을 바이트 수만큼이 이 값이 곱이 됨
ReadTotalTimeoutConstant
- 읽기 작업을 위한 토탈 타임 아웃 시간을 계산하기 위해 밀리초 단위의 정수 지정
- 각각의 읽기 작업은 요청된 바이트 수와 ReadTotalTimeoutMultiplier 맴버의 곱을 더한 값이 됨
- ReadTotalTimeoutMultiplier와 ReadTotalTimeoutConstant 맴버의 값을 0으로 설정을 하면
ReadFile에 타임아웃을 설정하지 않음
WriteTotalTimeoutMultiplier
- 쓰기 작업을 위한 토탈 타임아웃 시간을 계산하기 위해 밀리초 단위의 곱하기 계수 지정
- 각각의 쓰기 작업은 쓴 바이트 수만큼이 이 값이 곱이 됨
WriteTotalTimeoutConstant
- 쓰기 작업을 위한 토탈 타임 아웃 시간을 계산하기 위해 밀리초 단위의 정수 지정
- 각각의 쓰기 작업은 쓴 바이트 수와 WriteTotalTimeoutMultiplier 맴버의 곱을 더한 값이 됨
- WriteTotalTimeoutMultiplier와 WriteTotalTimeoutConstant 맴버의 값을 0으로 설정 하면
WriteFile에 타임 아웃을 설정하지 않음
참조 : http://msdn.microsoft.com/en-us/library/aa363190(VS.85).aspx