반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

bro's coding

java.Tread.scheduling 본문

[IT]/java

java.Tread.scheduling

givemebro 2021. 3. 17. 14:52
반응형

Thread scheduling

 

우선순위 방식

우선순위(priority)가 높으면 스케줄링이 될 가능성이 높아짐

스레드 우선 순위는 1~10

default:5

1이 가장 낮은 우선 순위, 10이 가장 높은 우선 순위

package step7;

/*
 * 자바 스레드 스케줄링은 우선 순위 방식
 * 이를 확인해보기 위해
 * 테스트 스레드를 20개 생성하고 start
 * 그중 하나를 우선순위를 10(가장 높은)으로 할당
 * 결과 확인
 */
class Worker implements Runnable {
	public void run() {
		String name = Thread.currentThread().getName();
		int priority = Thread.currentThread().getPriority();
		for (long l = 0; l < 9000000000L; l++) {

		}
		System.out.println(name + " 스레드 실행완료!: " + priority);

	}
}

public class TestThread7 {
	public static void main(String[] args) {
		System.out.println("main Thread 시작");
		Worker w = new Worker();
		for (int i = 1; i <= 20; i++) {
			Thread t = new Thread(w, i + "번째 일꾼 스레드");
			if (i == 9) {// 9번째 스레드 우선순위를 가장 높은 10으로 할당
				t.setPriority(Thread.MAX_PRIORITY);// 10
			}
			t.start();
		}
		System.out.println("main Thread 종료");
	}
}
main Thread 시작
main Thread 종료
9번째 일꾼 스레드 스레드 실행완료!: 10
13번째 일꾼 스레드 스레드 실행완료!: 5
1번째 일꾼 스레드 스레드 실행완료!: 5
5번째 일꾼 스레드 스레드 실행완료!: 5
8번째 일꾼 스레드 스레드 실행완료!: 5
4번째 일꾼 스레드 스레드 실행완료!: 5
3번째 일꾼 스레드 스레드 실행완료!: 5
2번째 일꾼 스레드 스레드 실행완료!: 5
6번째 일꾼 스레드 스레드 실행완료!: 5
20번째 일꾼 스레드 스레드 실행완료!: 5
12번째 일꾼 스레드 스레드 실행완료!: 5
16번째 일꾼 스레드 스레드 실행완료!: 5
17번째 일꾼 스레드 스레드 실행완료!: 5
7번째 일꾼 스레드 스레드 실행완료!: 5
18번째 일꾼 스레드 스레드 실행완료!: 5
14번째 일꾼 스레드 스레드 실행완료!: 5
15번째 일꾼 스레드 스레드 실행완료!: 5
11번째 일꾼 스레드 스레드 실행완료!: 5
10번째 일꾼 스레드 스레드 실행완료!: 5
19번째 일꾼 스레드 스레드 실행완료!: 5
반응형

'[IT] > java' 카테고리의 다른 글

java.Network.EchoProgram(1:1)  (0) 2021.03.19
java.Network  (0) 2021.03.18
java.currentTimeMillis(유닉스 시간)  (0) 2021.03.18
java.Deamon Thread  (0) 2021.03.17
java.Tread.sleep  (0) 2021.03.17
java.Thread  (0) 2021.03.17
java.FileMove(파일 이동)  (0) 2021.03.16
java.Object Serialization.transient(직렬화 제외)  (0) 2021.03.15
Comments