본문 바로가기

쓰레드2

Thread-3 실행제어 동기화 이번글이 쓰레드의 마지막이면서 쓰레드의 가장 핵심적인 내용이다. 1. 실행제어 쓰레드는 실행시키고, 중단시키는일을 실행제어라고 한다. 쓰레드는 우리가 처리해야할 작업들을 병렬로 처리해야 할 때 사용하는데, 각 작업들의 실행을 중간에 중단시킨다던가, 아니면 중단 되었던 작업을 실행시키는것을 직접 제어해야 할 때가 있다. 이번에는 이렇게 직접 제어할 수 있는 쓰레드 메소드들을 알아보고 적당한 사용방법을 알아보겠다. 1-1 sleep 우선 쓰레드를 일시적으로 멈추는 sleep이 있다. public class Main { public static void main(String[] args) { Thread thread=new Thread(()->{ for(int i=0;i{ for(int i=0.. 2021. 2. 12.
Thread-2 우선순위 쓰레드 그룹 데몬 쓰레드 1. 우선순위 쓰레드에는 우선순위라는 개념이 있다. 우선순위는 쓰레드간의 중요도에 따라 지정할 수 있다. 예를들어 채팅과 파일전송을 하는 프로그램을 예로 들어보자. 채팅같은경우는 아주빠른 시간안에 응답을 해줘야하고, 파일전송은 채팅보다는 비교적 느려도 괜찮다. 그런데 만약 2가지의 작업의 우선순위가 같다면 채팅의 응답속도가 느려질 수 있다. 이럴때 채팅의 우선순위를 보다 빠르게 하면 우리가 채팅을하는데 큰 문제를 못느낄것이다. 그러면 자바 Thread에서 어떻게 우선순위를 지정하는지 보자. Thread thread=new Thread(()->{ // do something }); thread.setPriority(5); // 1~10 thread.start(); 자바 T.. 2021. 2. 11.