* Thread 쓰레드라는 것은 현재 cpu가 어디를 수행하는지를 알려주는 Program Counter를 여러개 두는 것이다. 쓰레드가 없을 때에는 프로세스 하나 당 Program counter도 하나만 있다. 그렇지만 쓰레드가 존재한다면, 프로세스 안에도 Program Counter도 쓰레드의 수만큼 존재하게 된다. 쓰레드의 존재 이유는 경제성에 있다. 쓰레드는 Program Counter를 제외하고 프로세스의 code section, stack space와 같은 다른 영역을 공유하게 되면서 경제성을 추구할 수 있다. 쓰레드를 사용하면 병렬성이 좋아지고, 자원이 절약된다. * Thread-safe Thread-safe란 멀티 스레드 프로그래밍 환경에서 모든 스레드가 올바르게 작동하고 여러 개의 스레드가..