1.Thread
스레드는 작업을 수행하는 단위로 단순하게 cpu의 코어가 2개, 듀얼 코어라면 2개의 작업(스레드)을 동시에 할 수 있다.
지금까지의 작업은 싱글 스레드, 하나의 작업을 돌린것이다.
이 스레드를 이용하면 여러가지의 작업들 동시에, 병렬적으로 처리 할 수 있다.
public static void main(String[] args)가 있는 스레드를 메인 스레드라고 하고
스레드를 추가하여 병렬작업을 하는것을 멀티 스레딩이라고 한다.
멀티 스레딩의 장단점으로는 아래와 같다.
- 장점
CPU 이용률 향상
효율적인 자원 활용
수행 기능별로 분리하여 코드가 간결해짐
어플리케이션의 응답성 향상
- 단점
같은 프로세스의 자원을 공유하므로 동기화가 필요
동기화 처리에 관한 이슈 처리 필요(교착상태, 기아상태 등)
CPU환경이나 OS의 스케줄러를 고려해야 함
'개념 및 코딩 > 08.Thread 스레드' 카테고리의 다른 글
[JAVA]08-07.Thread Pool, Pool Block (0) | 2018.09.06 |
---|---|
[JAVA]08-05.Demon Thread (0) | 2018.09.06 |
[JAVA]08-04.Thread State, Control (0) | 2018.09.06 |
[JAVA]08-03.Priority, Synchronized (0) | 2018.09.06 |
[JAVA]08-02.Runnable, Thread (0) | 2018.09.04 |