본문 바로가기
Kosta DevOps 과정 280기/Java

멀티스레드-2

by 롯슈83 2024. 5. 30.
  • 프로그램 안에서 실행 중인 메소드를 말한다.
  • 멀티 쓰레드 : 프로그램 안에서 동시에 여러 개의 메소드가 동시다발로 동작하는 것을 말한다.
package com.kosta.exam01;


class Person extends Thread{
	private String name;
	public Person(String name) {
		this.name = name;
	}
	@Override
	public void run() {
		// TODO Auto-generated method stub
		for(int i = 1; i <= 10; i++) {
			System.out.println(name+"이 밥을 먹어요");
		}
		
		try {
			Thread.sleep(100);
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
public class PersonTest {
	public static void main(String[] args) {
		Person kim = new Person("김유신");
		Person lee = new Person("이재원");
		Person hong = new Person("홍석영");
		
		//실행할 때마다 실행 결과가 다르다.
		kim.start();
		lee.start();
		hong.start();
	}
}
  • 쓰레드 우선순위 설정
    •  객체.setPriority(1~10)
    • 우선순위 요청하는 것으로 반드시 그것이 우선적으로 실행된다는 보장이 되지는 않는다.
    • 쓰레드의 일반 상수 Thread.MIN_PRIORITY(1) ~ Thread. MAX_PRIORITY(10) 사이의 값. 설정하지 않으면 Thread. NORM_PRIORITY(5)의 값이 된다.
public class PersonTest {
	public static void main(String[] args) {
		Person a = new Person("홍길동");
		Person b = new Person("이순신");
		
		b.setPriority(Thread.MAX_PRIORITY);
		a.setPriority(Thread.MIN_PRIORITY);
	}
}

 

'Kosta DevOps 과정 280기 > Java' 카테고리의 다른 글

쓰레드 통신  (0) 2024.05.30
임계영역 (Critical Section)  (0) 2024.05.30
예외 처리  (0) 2024.05.28
문자열 처리  (0) 2024.05.28
정규표현식  (0) 2024.05.27