티스토리 뷰
스레드는 동시에 여러개의 프로그램을 실행하는 효과를 낸다.
프로세스는 최소 하나의 스레드를 가지 있음.
프로세스 : 프로그램 실행의 최소 단위
병령 처리에는 다중 프로세스와 다중 스레드다 있다.
다중 스레딩은 하나의 프로그램이 동시에 여러 가지 작업을 할 수 있도록 하는 것
스레드는 프로세스 안쪽에 존재한다.
스레드와 프로세스의 차이점
-프로세스는 완벽히 독립적이기 때문에 메모리 영역(Code, Data, Heap, Stack)을 다른 프로세스와 공유하지 않는다.
-쓰레드는 해당 쓰레드를 위한 스택을 생성할 뿐 그 이외의 Code, Data, Heap영역을 공유한다.
<예제 1 - Thread 사용>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | class Counting extends Thread{ @Override public void run() { for(int i =0; i< 10;i++){ System.out.println(i); } } } public class Test { public static void main(String[] args) { Thread t = new Counting(); t.start(); } } | cs |
결과 :
0
1
2
3
4
5
6
7
8
9
<예제 2 - Runnable 사용>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | class Counting2 implements Runnable{ @Override public void run() { for(int i=0;i<10;i++){ System.out.println(i); } } } public class ThreadTest2 { public static void main(String[] args) { Thread r = new Thread(new Counting2()); r.start(); } } | cs |
결과 :
0
1
2
3
4
5
6
7
8
9
자바에서 다중 상속이 불가능 한 것을 감안한다면 Runnable 인터페이스를사용하는 것이 좋다!!!
반응형
'언어 > JAVA' 카테고리의 다른 글
[JAVA] 정규식 (0) | 2016.09.22 |
---|---|
[JAVA] synchronized (0) | 2016.09.22 |
[JAVA] 해쉬맵(HashMap) (0) | 2016.09.20 |
[JAVA] ArrayList와 LinkedList (0) | 2016.09.20 |
[JAVA] 컬렉션 (0) | 2016.09.20 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 클래스
- Server
- jdbc
- 안드로이드
- 하기
- 사용
- java
- Android
- Delete
- 어노테이션
- 음식
- 스프링
- 라이브러리
- 연결
- synchronized
- mybatis
- Controller
- Default
- Create
- jsp
- mysql
- js
- nsis
- 생성
- spring
- 자바
- 종류
- iNT
- Class
- UTF-8
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
글 보관함