Java/Excercise

thread ch03 priorityTest

낭구리 2021. 9. 8. 18:17
package ch03;

Thread.MIN_PRIORITY(1)~ Thread.MAX_PRIORITY(10)
디폴트 우선 순위 : 5
우선 순위가 높은 thread가 cpu의 배분을 받을 확률이 높다.
//setpriority(), getpriority()

class PriorityThread extends Thread {
	@Override
	public void run() {
		int sum = 0 ;
		Thread t =  currentThread();
		System.out.println(t + "start");
		
		for (int i = 0; i < 1000000; i++) {
			sum += i;
		}
		System.out.println(t.getPriority() + " : end"); //현재 디폴트 순위가 어떻게되는지
		
	}//재정의
}

public class priorityTest {

	public static void main(String[] args) {

		int i ;
//		for (i = Thread.MIN_PRIORITY; i <= Thread.MAX_PRIORITY ; i++) {
//			PriorityThread pt = new PriorityThread();

			쓰레드의 우선순위를 지정하는 방법
//			pt.setPriority(i); //1~ 2~ 3~ 값에 따라 cpu의 배분율이 다르게
////			Thread[Thread-2(이름),3(할당받는),main]start
//			pt.start();		
//		}
          //MIN_PRIORITY 상수값 써보기 위해 1~10까지 반복문
		
		PriorityThread pt1 = new PriorityThread();
		pt1.setPriority(1);
		PriorityThread pt2 = new PriorityThread();
		pt2.setPriority(5);
		PriorityThread pt3 = new PriorityThread();
		pt3.setPriority(10);
//		
	}

}

'Java > Excercise' 카테고리의 다른 글

thread ch03 TerminateThread  (0) 2021.09.08
thread ch03 JoinTest  (0) 2021.09.08
thread ch02 SharedResource  (0) 2021.09.08
thread ch01 RunnableTest2  (0) 2021.09.08
thread ch01 RunnableTest1  (0) 2021.09.08