|
혹, 3초에 한 번씩 수행하는 작업이 3초를 초과하는 경우가 있지 않을까요?
간혹 이렇게 다음 이벤트가 발생할 때까지 수행 이벤트가 끝나지 않으면,
이런 상황이 중첩되다 보면 이런 상황으로 도달하는 것으로 알고 있습니다.
3초마다 계속 DB 접속을 새로하는 것 같은데,
한 번 접속 후 계속사용하는 것으로 해도 되지 않을까요? 너무 많은 오버해드가 있을 것 같네요.
만약 작업이 오래 걸리면 이 작업은 스레드로 빼고, 타이머 이벤트에서는 스레드에 이벤트만
던져주는 방식으로 수정해도 괜찮을 것 같네요.
도움이 되셨기를...
하안인 님이 쓰신 글 :
:
: c++buider6.0을 사용하고 있습니다.
:
: 타이머를 작동해서 3초에 한번씩 데이타베이스에 접근해서 퀴리한 후
: 데이타베이스를 닫고 종료한후 다시 타이머를 가동해서
: 반복적으로 일을 수행합니다.
:
: 그런데 1~3일정도 프로그램을 실행하면 out of memory 메시지가 나오네요.
:
: 변수를 메모리를 할당하지도 않고
:
: 퀴리를 돌려서 사용하는것 밖에 없는데요.
:
: 어떤 것을 봐야 할까요?
:
: 감사합니다.
|