Java/Concurrency 12

Java > Concurrency > 1. Process, Thread

Multi taskingOS가 여러 개의 프로세스를 동시에(실제로는 아주 짧은 시간에 번갈아가며) 실행하는 기술OS 소프트웨어 관점 OS의 스케줄링 기법을 사용하며 실행 단위는 프로세스가 아닌 쓰레드다  Multi processing둘 이상의 프로세서(CPU core)를 사용하여 여러 작업을 동시에(실제로 ) 처리하는 기술하드웨어 장비 관점  ProcessOS로부터 자원을 할당받아 실행 중인 프로그램 실행 중인 프로그램의 인스턴스 독립적인 메모리 공간을 가지며 서로 접근 불가 메모리 구조Code section실행할 프로그램의 코드 저장Data section전역/정적 변수 저장Heap(Memory)동적 할당 영역 Thread모든 프로세스에는 최소 하나의 쓰레드가 존재한다Stack함수 호출 시 생성되는 지역..

Java/Concurrency 2024.08.29

Java > Concurrency > 2. Thread 생성, 실행

Thread 생성https://github.com/venzersiz/learn-java8/blob/master/src/test/java/concurrency/basic/MakingThreadTest.java Thread 클래스를 상속받거나 Runnable 인터페이스를 구현하는 방법이 있다 Thread 객체의 기능을 확장할 때를 제외하곤 Runnable 인터페이스를 사용하는 것이 여러모로 좋다 run() 메서드를 오버라이딩해야 한다  Thread 실행https://github.com/venzersiz/learn-java8/blob/master/src/test/java/concurrency/basic/MakingThreadTest.javahttps://github.com/venzersiz/learn-java..

Java/Concurrency 2024.08.23