티스토리 뷰
반응형
package day19;
// 쓰레드 상속받아 쓰레드 생성
public class ThreadExam01 {
public static void main(String[] args) {
//쓰레드를 상속받은 클래스의 객체 생성
MyThread mt1 = new MyThread("*");
MyThread mt2 = new MyThread("-");
//쓰레드 호출
mt1.start();
mt2.start();
System.out.println("End Thread class");
}
}
class MyThread extends Thread {
String str;
public MyThread(String str) {
this.str = str;
}
@Override
public void run() {
for(int i =0; i<7; i++) {
System.out.println(str);
try {
Thread.sleep((int)(Math.random()));
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
package day19;
public class ThreadExam02 {
public static void main(String[] args) {
//Runnable인터페이스를 객체화
NewThread01 nt1 = new NewThread01("#");
NewThread01 nt2 = new NewThread01("@");
//쓰레드 객체화 하며 인터페이스 호출
Thread t1 = new Thread(nt1);
Thread t2 = new Thread(nt2);
//쓰레드 호출
t1.start();
t2.start();
System.out.println("Runnable Thread");
}
}
class NewThread01 implements Runnable {
String str;
public NewThread01(String str) {
this.str = str;
}
@Override
public void run() {
for(int i =0;i<7;i++) {
System.out.println(str);
try {
Thread.sleep((int)(Math.random()));
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
※ 개념정리
Process(프로세스) : 실행중인 프로그램
Thread(쓰레드) : 프로세스의 자원을 이용하여 실제로 작업을 수행하는 것
멀티쓰레드의 장단점
장점
1. CPU의 사용률 향상
2. 효율적인 자원의 사용
3. 사용자에 대한 응답성 향상
4. 간결한 코드
단점
동기화와 교착상태의 발생 가능성이 높아진다.
쓰레드 구현방법
1) Thread 클래스 상속
1. class Name extend Thread
2. Override -> run
3. start( )
2) Runnable 인터페이스 구현
1.public class Name implements Runnable
2. Override -> run
3. Runnable를 인터페이스한 클래스 객체화
4. start( )
*재사용성과 일관성으로 인해 Runnable가 일방적이다.
'Java > 개념' 카테고리의 다른 글
JAVA 쓰레드의 우선순위 (0) | 2020.07.14 |
---|---|
JAVA 싱글쓰레드와 멀티쓰레드의 차이점 (0) | 2020.07.14 |
JAVA/HashMap과LinkedHashMap과TreeMap의 비교 (0) | 2020.05.30 |
JAVA/HashMap/Hashtable/Hashing (0) | 2020.05.30 |
JAVA/HashSet과TreeSet와LinkedHashSet의 비교 (0) | 2020.05.30 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 정보처리기사 #2020년개정 #UML #다이어그램 #정적 #동적 #구조적 #행위 #실체화 #구조 #관계 #의존 #연관 #집합 #포함 #일반화
- JAVA #CollectionFramework #Set #HashSet
- NEW #BLOCKED #TERMINATED #WAITING #TIMED WAITING #RUNNABLE
- Process #쓰레드
- 백준 #Java #10926 #??!
- 육회물회 #금복주류 #소메랑곱창 #금정역 #나는솔로 #맥주
- 백준 #2557 #HelloWorld! #JAVA
- 자바 #개념 #변수 #자료형
- 정보처리기사 #2020년 개정 #XP #익스트림프로그래밍 #릴리즈 #이터레이션 #방법론
- 정보처리기사 #가용성 #2020년개정 #오픈소스 #애플리케이션 #WAS #비즈니스 #DBMS
- 백준 #JAVA #1000번 #Scanner #Buffered #입력함수
- 10998 #A*B #AxB
- JAVA #CollectionFramework #List #ArrayList #LinkedList #for-each #foreach #iterator #Iterator #반복자
- JAVA #Thread #실행제어 #상태제어 #스케줄링 #sleep #join #stop #resume #suspend #yeid #interrupt #interrupred #Deprecated
- 정보처리기사 #2020개정 #SW설계 #현행시스템
- JAVA #CollectionFramework #Set #Treeset
- 백준 #1001번 #A-B
- JAVA #Thread #쓰레드 #싱글쓰레드 #멀티쓰레드 #자바
- 포토시그니처 #신라면 #시위 #휴가
- 정보처리기사 #2020년 개정 #SW설계 #요구사항 확인 #애자일 #스크럼
- 정보처리기사 #2020년개정 #요구사항 분석기법 #요구사항 확인기법
- 정보처리기사 #2020년개정 #요구사항확인 #1과목 #SW생명주기 #폭포수 #SW설계 #나선형 #애자일 #프로포타입
- JAVA #Thread #쓰레드 #자바 #sychronized #wait #notify #notifyAll #lock #잠금 #동기화 #임계영역
- JAVA #HashMpa #Map #Hashtable #Hashing
- JAVA #CollectionFramework #Stack #Queue #LinkedList #PriorityQueue #LIFO #FIFO
- JAVA #Thread #쓰레드 #자바 #우선순위 #setPriority #getPriority
- JAVA #CollectionFramework #Set #HashESet #TreeSet #LinkedHashSet
- JAVA #Map #HashMap #TreeMap #LinkedHashMap
- key #value
- JAVA #Thread #Runnable
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함