C언어/해당 시, 분에 동작 처리
글쓴이: coathanger / 작성시간: 수, 2007/02/07 - 3:02오후
안녕하세요..
일단, 프로그래밍의 경험이 많이 없습니다.
C언어를 사용하여 해당 시(hour), 분(minute)을 읽어와 입력한 시간마다 수행되는 기능을 구현하려고 합니다.
예를 들어, 입력이 5분 30초(내부 시간 포멧은 초가 되었든 상관 없음)라면 5분 30초마다 "now"라는 문자열을
찍을려고 하는데요.. 입력되는 각 시간은 여러개가 될 수 있고요..
어떻게 구현해야 할지 감 조차 못잡아서 힌트라도 얻을까 적어 봅니다...
Forums:
setitimer()를
setitimer()를 사용하시거나
realtime extension 표준을 사용하는 환경이라면 timer_settime()을 사용하시면 됩니다.
아래는 realtime 의 타이머 설정하는 예입니다.
...앞에서 sigev 설정하고...
if (timer_create(CLOCK_REALTIME, &sigev, &rt_timer) == -1) {
perror("FAIL: timer_create()");
return -1;
}
rt_itspec.it_value.tv_sec = 2; /* 첫번째 타이머는 2.5 초 뒤에 만료됩니다 */
rt_itspec.it_value.tv_nsec = 500000000; /* 500000000 나노초 = 0.5초 */
rt_itspec.it_interval.tv_sec = 4; /* 2번째부터는 주기적으로 4 초마다 만료됩니다 */
rt_itspec.it_interval.tv_nsec = 0;
if (timer_settime(rt_timer, 0, &rt_itspec, NULL) == -1) { /* 타이머의 설정(시작) */
perror("FAIL: timer_settime()");
return -1;
}
========================================
* 부분이 전체를 대변하는 하나의 속성일때 진리이다.
영속적이지 못한 것은 전체가 될 수 없다.
========================================
* The truth will set you free.
대단히 감사합니다.
잘 돌아 갑니다...
이런게 있는 줄 정말 몰랐습니다... 감사합니다.
멀티쓰레드 프로그램이시라면...
시그널을 받게끔 하는 것은 좋은 방법이 아닐듯 싶습니다.
음... 저같은 경우는 time을 써서 unix epoch를 구하고, strftime을 써서... 5시 30분을 구했는데... 음... 방법이 좀 구리군요... ㅎㅎㅎ
다른 방법엔 뭐가 있을까요?(많기야 엄청 많겠네요)
句日新, 日新 日新 又日新.
句日新, 日新 日新 又日新.
댓글 달기