여러개의 timer를 사용가능하게 하려면 어떻게 해야 하나요?
글쓴이: ckebabo / 작성시간: 토, 2008/08/02 - 11:05오전
하나의 프로그램에서 어떠한 개채들의 alive상태를 체크하기 위해 timer를 사용하려고 합니다. 내용은 이렇습니다.
여러 개체들이 프로그램에 주기적/비주기적으로 무언가 통신을 합니다. 이때 오래도록 해당 개체와 아무런 통신이 이루어 지지 않았다면 해당 개체에 대한 내용을 지워버립니다.
제가 생각한 방법은 다음과 같습니다.
n개의 개체들을 주기적/비주기적으로 어플리케이션에 무언가 신호를 보내게 되고 이 때마다 해당 개체에 대한 timer를 초기화하여 줍니다. timer이벤트가 발생하면 해당 개체를 지워줍니다.
여러개의 timer를 이용하여(각 개체마다 타이머를 설정하여) 구현 가능해 보이는데, 그 자세한 사항을 잘 모르겠습니다.
만일 절대적인 시간이 설정 가능한 timer를 구현한다면, 특정 시점을 지정하여 tree나 heap같은 구조로 최근의 timer로 계속 세팅하여 timer를 이끌어 낼 수도 있겠는데, 절대적인 시간에 설정가능한 timer 또한 어떻게 해야할 지 감이 잘 오질 않네요. setitimer(2)나 alarm(2) 모두 특정 단위 시간 간격이나 현재 시각으로부터 얼마 후에 이벤트(?)를 발생시키는 것으로 알고 있는데 어떻게 이용을 해야 할지도 잘...
혹시 비슷한 구현 예라도 있는가요?
Forums:
개체들이 신호를 보내게 하는거 보다는
메인 프로그램에서 개체들이 마지막으로 통신한 시간을 저장한뒤에 그시간을 체크해서 처리하게 하는게 좋을듯 하네요..
댓글 달기