@프리헌터스 님 질문드립니다.
예를들어 위와같이 12시에 오는 우편물을 받으려고 하는데요.
타임체크 시작과 종료의 개념이 여전히 궁금합니다.
자동우편받기는 무조건 1이라고 가정할 때,
12시완료가 0이면 -> 타임체크 시작[12:00:00]~[13:00:00]으로 체크->판단문으로 체크하여 참(1)이면->우편받기 호출
그런데 여기서 제 느낌상 타임체크 시작이 있으면 종료도 있어야 하는것 같아서
두군데서 모두 종료를 해주고 있는데 이런식으로 해야 하는거 맞나요?
아니면 시작으로만 계속 놔둬도 메모리 리크나 로직상에서 문제가 없을까요?
(참고로 저 부분은 무한루프 되는 부분입니다. 최대한 부하가 안걸리도록 자동우편받기가 완료되면 안쪽으로 안들어가게 하려고 합니다. 제가 걱정되는 것은 시작->시작->시작->시작->시작으로 계속 체크하면 메모리나 그외의 문제가 발생하는지의 여부입니다.)
밑으로는 다른질문입니다.
시간지정을 할 때 랜덤시간을 지정할 수 있을까요? 예를들면,
[12:[random,59]:00]~[13:00:00] 이런식으로요..
'12시 이후'를 기준으로 체크를 하려고 할때는 [12:00:00]~ 이런식으로 지정해도 되나요?
타임체크 시작과 종료의 개념이 궁금합니다.
그리고 종료를 해야 한다면 종료때에도 시작시에 지정한 [12:00:00]~[13:00:00] 값을 넣어줘야 하나요?
질문이 많아서 죄송합니다..__
저도 디테일한 부분은 소스분석해서 답변달아야 합니다 ^^
1. 시작과 종료, 그리고 다음
시작은 시간대를 지정함과 동시에 해당 시간대를 감지하는 시계를 작동시키는 겁니다.
작동중에 해당 시간대면 1을 가지고, 해당시간대가 아니면 0을 갖습니다.
종료는 감지하는 시계를 멈추는 것이며 무조건 0값을 갖습니다.
"다음" 지정시 -1 값을 무조건 갖습니다.(-1값은 분기시 마지막분기로 분기됩니다.)
"다음 "의 경우 24시간 후 재활성 됩니다.
2. "시작" -> "시작"은 재지정에 해당됩니다. 종료없이 자유롭게 재지정하셔도 됩니다.
대신 "다음" 먹은 -1 값도 0으로 초기화 되므로 "다음" 기능이 무시되는거나 마찬가지겠죠
3. 시작서브에다.... 타임체크1 [12:00:00] ~ [13:00:00] 시작 (최초1회 시계작동)
작업서브에다.... 판단 : [타임체크,1] = 1 0 분기(참) - 타임체크1, 다음 - 우편받기함수호출
1분기(거짓) - 안함
이런식으로 구현하면
1. 최초 실행시 시계를 작동시키고...
2. 판단문에 의해 1인 경우(지정시간대)에만 0분기(참) 타서
3. "다음"에 의해 시계를 24시간후로 재설정하고...
4. 우편받기 처리 함수를 수행...
5. 이후 다시 판단문에 들어와도 이미 -1(다음) 값이기 때문에 거짓분기를 탐
24시간 전까지는 계속 1분기(거짓) 를 수행하게 됨
4. 시간설정시 랜덤지정 가능합니다.
[시작시간] ~ [끝시간] 역시 연산식입니다.
중간에 ~ 기호로 시작과 끝시간대가 지정되는거구요
결과적으로 최종계산된 숫자값(초) 만을 요구합니다.
2000 ~ 4000 이런식으로도 지정가능합니다.
하루가 0~86,400 초 인가요?
5. 시작시간은 00:00:00 입니다.
단 자정이 넘는경우 [23:00:00] ~ [25:20:00] 처럼 지정해야 제대로 작동됩니다.