안녕하세요 루나네스 입니다
타이머는 일반적으로 멀티스레딩 환경에서 다중으로 동시에 사용이 가능합니다만..
(간단하게 예기하면) 타이머의 특성상 프로세스 동작 중 타이머가 작업권한을 받았다가 처리 후 반환하는 식 이기 때문에
동시에 사용하기에는 무리가 있습니다
특히 실시간으로 사용하는 것에는 매우 안좋습니다
질문 올리신 내용은 타이머가 인식되지 않는 다는 내용인데요
결론부터 말씀드린다면
타이머를 여러개 사용해도 전부 동작 한다는 것 입니다
tmrTimer1.enable = true; <- 이 속성의 값이 true가 되어야 타이머가 동작됩니다
다만.. 위에서 언급드린 내용처럼
타이머의 한 주기 이벤트가 종료 되어야 다른 동작이 가능하기 때문에
타이머1의 Tick event에 정의된 내용이 많을 경우
처리를 하는 시간동안 타이머2의 Tick 이벤트를 실행하지 못하는 경우가 있습니다
Timer1의 간격 100ms
Timer2의 간격 500ms 라고 가정하고
Timer1의 Tick 이벤트에서 시스템에 저장되어 있는 파일을 전부 읽어오라는 (예가 너무 무식한가요;;)
명령을 수행하는데 대략 1000ms 가 걸린다고 하면
당연히 타이머2의 이벤트가 하나나 두개쯤 무시 되기도 합니다
(적고 나서 보니.. 진짜 무식하게 예를 들어놨네요;; 이런 개념이다 라고만 이해해 주세요)
타이머에 대한 자세한 내용은 우리카페 [소년포비]님께서 너무나 잘 설명해 주신 내용이 있습니다
http://blog.daum.net/starkcb/117
첨부된 예제는 제가 간단하게 만들어본
폼 컨트롤의 타이머 2개와 Timer class를 이용한 타이머 2개
총 4개의 타이머가 동작하는 예제 입니다
제가 추천해 드리는 방법은
가급적이면 타이머를 사용하지 않고 Thread를 통해서 작업을 진행하는 것이 좋습니다
단점은 Thread에서 직접적으로 폼 컨트롤을 제어가 불가능하기 때문에
Deligate를 사용해서 접근하도록 코딩을 해야 한다는 점 입니다만
최고의 장점으로 다른 작업에 영향을 주지 않을 정도로 정밀도가 향상됩니다