기본 예시
1. Runnable 인터페이스 생성
Runnable logic1 = () -> {
//logics
}
Runnable logic2 = () -> {
//logics
}
자바에서 람다식은 인터페이스에서만 사용가능
2. Thread에 Runnable 함수형 인터페이스를 넣어줌
Thread thread1 = new Thread(loagic1)
Thread thread2 = new Thread(loagic2)
3. Thread를 실행
thread1.start();
thread2.start();
쓰레드 실행 제어 함수들
- sleep(long millis), sleep(long milis, int nanos)
- 지정된 시간동안 쓰레드를 정지
- 시간이 지난 후, 자동으로 실행대기상태가 됨
- join(), join(long milis), join(long milis, int nanos)
- 지정된 시간동안 쓰레드를 실행
- interrupt()
- sleep() 혹은 join()에 의해 일시정지된 쓰레드를 깨워 실행대기상태로 만듬
- stop()
- 쓰레드를 즉시 종료
- suspend() ↔️ resume()
- suspend(): 쓰레드를 일시정지
- resume(): suspend된 쓰레드를 실행대기상태로 전환
- yield()
- 실행 중 자신의 실행시간을 다른 쓰레드에게 양보하고, 실행대기상태로 전환
'CS' 카테고리의 다른 글
[JAVA] - GC(Garbage Collection) 가비지 컬렉션 정리 (0) | 2024.03.10 |
---|---|
[컴퓨터구조] 캐시 메모리 (0) | 2024.03.10 |
[컴퓨터구조] 총정리 (0) | 2024.03.10 |
[JAVA] 객체 지향 설계의 5원칙 - SOLID 정리 (0) | 2024.03.10 |
운영체제 - 프로세스와 스레드 (0) | 2024.03.10 |