다루두루

블로그 이미지

차케요

공부하면서 정리하는 노트같은 블로그입니다.

[Java] 자바 스레드 예제

[JAVA]자바 공부하기 2014. 1. 1. 16:52

 

▣ 자바(Java) 스레드 예제

 

 Thread와  Runnable을 구현한 클래스

 

■ 먼저 간단하게 thread와 Runnable를 동시에 구현한 클래스의 예를 만들어보겠습니다.

 

 

 

 Threa API 활용

 

■ 이번에는 스레드 클래스를 이용해서 얻을 수 있는 정보를 살펴보도록 하겠습니다.


지난 포스팅에서 API를 정리해봤었는데요. 그 메서드들을 이용해서 예제를 만들어 보겠습니다.

 

■ 소스 코드를 살펴보면

* 5번 라인 : 현재 이 프로그램이 진행행중인 상태에서 Thread의 총 갯수를 나타나내는 것입니다.

* 8번 라인 : 이 코딩을 만나게 되면 실행중인 Thread를 객체로 담아둘 수 있습니다.

*10번 라인 :  cur라는 객체에 담긴 Thread의 이름을 출력하게 합니다.

*13번 라인 : 시간 지연 매서드로 2초동안 Thread를 멈추게 합니다. 이렇게 2초동안 CPU는 쉬게 되는데 이때 다른 스레드가 침범하거나 종료되는 상태를 확인하기 위해서 InterruptedException이라는 예외처리를 합니다.

*17번 라인 : cur객체에 담겨있는 스레드의 우선순위를 출력합니다.

*18번 라인 : cur객체가 유효한지를 출력하는 문구입니다.

*19번 라인 : cur가 main Thread에 종속되어 있는지를 확인합니다.

 

■ 일반적으로 스레드는 독립 Thread와 종속Thread가 있는데요. 종속(setDemon=true)은 메인이 종료되면 자신의 실행이 끝나지 않았어도 같이 종료되버리는 것입니다. 반대로 독립은 메인이 종료되든 말든 자신이 실행해야 할 부분을 모두 실행하고 종료가 됩니다.

 

 독립 Thread

 

■ 독립스레드를 만들어서 메인과는 상관없이 실행되는 형태를 만들어 보도록 할게요.

 

 

 

 ■ 위의 AAA클래스의 코딩을 살펴보면 현재 시스템 시간을 Date객체로 얻어오면서 1초의 시간을 지연하고, BBB클래스의 경우는 0~4까지의 숫자를 출력하면서 0,4초를 지연시킵니다.  메인의  start문구가 먼저 출력이 되고 AAA, BBB클래스 thread의 인스턴스를 생성하고  독립thread로 선언을 하고 두개의 스레드를 실행을 시킵니다.

 

■ 실행을 시켜보면 "메인 End!!!!"가 출력되면서 메인이 종료 되는걸 확인할 수 있는데요. 이와 상관없이 끝까지 실행을 하게 됩니다.

 

저작자표시 비영리 변경금지 (새창열림)
Posted by 차케요

    최근...

  • 포스트
  • 댓글
  • 트랙백
  • 더 보기

카테고리

NEW (900)
아이폰 개발 기초 (7)
취미 (16)
아두이노 (16)
[안드로이드] 어플만들기 (77)
안드로이드 기초 다지기 (61)
슈팅게임 만들기 (4)
[JAVA]자바 공부하기 (48)
C언어 알고리즘 (61)
[Unity3D]유니티3D 강좌 (7)
컴퓨터 (325)
포토샵CS2 강좌 (6)
유용한 프로그램 (244)
리눅스 노트정리 (22)
임베디드 리눅스 (11)
New블로그 (9)
음식의 효능 (4)
일반상식 (56)
HTML 공부 (40)
포토샵 공부 (36)
엑셀 (6)
파워포인트 공부 (19)
노트정리 (38)
일상 (33)
TV영화 (85)
방명록 : 관리자 : 글쓰기
차케요's Blog is powered by daumkakao
Skin info material T Mark3 by 뭐하라
favicon

다루두루

공부하면서 정리하는 노트같은 블로그입니다.

  • 태그
  • 링크 추가
  • 방명록

관리자 메뉴

  • 관리자 모드
  • 글쓰기
  • NEW (900)
    • 아이폰 개발 기초 (7)
    • 취미 (16)
      • 아두이노 (16)
    • [안드로이드] 어플만들기 (77)
      • 안드로이드 기초 다지기 (61)
      • 슈팅게임 만들기 (4)
    • [JAVA]자바 공부하기 (48)
    • C언어 알고리즘 (61)
    • [Unity3D]유니티3D 강좌 (7)
    • 컴퓨터 (325)
      • 포토샵CS2 강좌 (6)
      • 유용한 프로그램 (244)
    • 리눅스 노트정리 (22)
      • 임베디드 리눅스 (11)
    • New블로그 (9)
    • 음식의 효능 (4)
    • 일반상식 (56)
    • HTML 공부 (40)
    • 포토샵 공부 (36)
    • 엑셀 (6)
    • 파워포인트 공부 (19)
    • 노트정리 (38)
    • 일상 (33)
    • TV영화 (85)

카테고리

PC화면 보기 티스토리 Daum

티스토리툴바