|
임펠리테리입니다.
님께서 작성한 코드로는 디폴트 쓰레드가 서브쓰레드보다 하는 일이 적다고 하더라도, 디폴트 쓰레드는
백그라운드에서 계속 폼을 업데이트한다든지 하는 그런 윈도우메시지들을 계속 받고 처리하고 있으므로
서브쓰레드보다 당연히 CPU 시간을 많이 잡아먹게 됩니다.
그외의 이상한 현상에 대해서는 소스를 보여주시거나 어떻게 코딩했는지 알려주셔야 답변이 가능하겠네요.
그럼 이만...
초보 님이 쓰신 글 :
: 안녕하세요.
:
: 한 application을 실행시켜 Form1 이 Create될 때 FormCreate Event(Form1의)에
: Thread를 구동시키는 프로그램을 짰는데 Thread의 Priotity를 tpLowest로 했습니다.
: 그리고 application의 메인 loop와 thread의 loop는 단순히 숫자를 증가시키는 code로 했습니다.
: 그래서 메인 loop와 thread의 loop의 한번 도는데 걸리는 시간은 같다고 생각이 됩니다.
:
: 질문 1. 그런데 메인 loop에 비해 thread의 loop가 훨씬 빨리 도는 이유.(일정시간 경과 후 비교)
: 질문 2. Thread의 loop는 초고속으로 돌다가 잠깐멈추었다가 초고속으로 도는 이유
: (참 고 : thread의 Priority=tpNormal로 하면 메인 loop의 잠깐식 멈추는 현상이 일어납니다.)
|