Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 의존주입
- springmvc
- 어노테이션
- @
- gradle
- @RequestParam
- @ResponseBody
- jointpoint
- Model
- springjdbc
- SpringBoot
- 스프링
- c:if
- 바인딩변수
- PointCut
- Java
- 서비스레이어
- spring
- after-throwing
- MVC
- produces
- 비즈니스레이어
- AOP
- 유효성검사
- @RequestMapping
- frontController
- application.properties
- @Valid
- 생성자주입
- .xml
Archives
- Today
- Total
메모장
[멘토 씨리즈] 스레드 본문
728x90
반응형
- 프로세스 : 프로세스란 프로그램이 동작하여 메모리에 올려진 상태를 말하며 실행중인 프로그램을 의미
- 스레드 : 스레드는 프로세스 내에서 독립적으로 실행되는 작업 단위를 의미. 프로세스 내의 주소공간 이나 자원들과 같은 스레드끼리 공유하면서 실행된다.
- 멀티 스레드 : 스레드는 임의의 클래스에 Thread 클래스를 상속하거나 Runnable 인터페이스를 상속 하여 구현 할 수 있는데 , 하나의 프로세스 안에서 스레드를 여러개 선언하여 멀티 스레드를 사용할 수 있다.
- 동기화 메서드 : 멀티 스레드를 구현할 경우, 스레드의 동작 순서와 자원 공유를 위해 스레드 동기화를 통해 기능을 구현한다. 스레드 객체 내부의 동기화 메서드를 실행하면 다른 스레드가 동기화 메서드를 실행하지 못하도록 스레드 끼리의 자원공유를 제어한다.
- 스레드 상태 : 스레드를 생성하고 동작을 시작하면 다양한 상태를 가지게 된다. 스레드의 상태는 자동으로 변경될 수 있고 개발자에 의해 임의로 변경할 수 있다.
|
상태
|
상수
|
설명
|
|
생성
|
NEW
|
스레드 객체가 생성되었지만 아직 start()메서드가 호출되지 않은 상태
|
|
대기
|
RUNNABLE
|
실행 대기 또는 실행 상태로 언제든지 갈 수 있는 상태
|
|
일시정지
|
WATING
|
다른 스레드가 종료 될 때 까지 대기하는 상태
|
|
TIMED_WATING
|
주어진 시간동안 대기하는 상태
|
|
|
BLOCKED
|
락이 풀릴 때까지 대기하는 상태
|
|
|
종료
|
TERMINATED
|
수행을 종료한 상태
|
- sleep 메서드 : 스레드의 상태를 잠시 정지 하고 싶으면 sleep 메서드를 사용해 원하는 시간(초 단위) 만큼 정지 시킬 수 있다.
- wait() , notify() 메서드 : wait(),notify() 메서드를 사용하면 원하는 시점에 스레드를 잠시 종료하거나 다시 시작할 수 있다.
728x90
반응형
'JAVA > [멘토씨리즈]' 카테고리의 다른 글
| [멘토 씨리즈] 문제풀이 4 (0) | 2024.04.09 |
|---|---|
| [멘토 씨리즈] 파일 입출력 (0) | 2024.04.09 |
| [멘토씨리즈] 컬렉션 프레임 워크 (0) | 2024.04.09 |
| [멘토씨리즈] 예외처리 (0) | 2024.04.09 |
| [멘토 씨리즈] 다형성과 타입변환 (0) | 2024.04.09 |