프로세스와 스레드, 자바 메모리 구조
멀티태스킹은 CPU 시간을 쪼개어 동시성을 흉내 내는 기술이며, 실제 병렬 처리는 멀티프로세싱입니다. 프로세스는 독립된 메모리를 갖는 ‘공장’, 스레드는 스택만 독립적으로 갖고 힙을 공유하는 ‘일꾼’입니다. JVM 메모리 중 스레드끼리 공유하는 Heap 영역은 동시성 문제의 원인이 되기도 합니다. 유연한 확장을 위해 스레드 구현 시 Runnable 인터페이스 사용을 권장합니다.
멀티태스킹은 CPU 시간을 쪼개어 동시성을 흉내 내는 기술이며, 실제 병렬 처리는 멀티프로세싱입니다. 프로세스는 독립된 메모리를 갖는 ‘공장’, 스레드는 스택만 독립적으로 갖고 힙을 공유하는 ‘일꾼’입니다. JVM 메모리 중 스레드끼리 공유하는 Heap 영역은 동시성 문제의 원인이 되기도 합니다. 유연한 확장을 위해 스레드 구현 시 Runnable 인터페이스 사용을 권장합니다.