본문 바로가기
  • 개발자를 꿈꾸는 중

Java32

Thread - 동기화 필요성 작업이 하나씩 하나씩 순차적으로 실행되어야 할 때 == 완료이후에야 다른 작업이 시작될 수 있다. 메서드 동기화 접근지정자 다음에 synchronize를 추가해 준다 이 경우 두개의 쓰레드를 실행시켜도 첫 쓰레드가 완전히 끝나야 다음 쓰레드가 아래의 메소드를 실행한다 블록 동기화 메서드 전체를 동기화 할 필요없을 때 사용 key(임의의 객체)가 다르면 동시 실행 가능 키 생성 방법: 객체를 만들고 그 이름을 따서 key위치에 넣어주면 된다. 2022. 5. 9.
Thread - 속성 Thread.currentThread() - 객체를 참조해준다. Thread.activeCount() - 현재 실행 중인 쓰레드의 개수 Thread.setName(String name) Thread.getName() - 이름 설정 - 이름 가져오기 Runtime.getRuntime().availableProcessor() - 코어 수 우선순위: 모든 쓰레드는 1~10 사이의 순위를 가지고있다. 순위 기본값: 5 => 우선순위를 지정하지 않으면 5를 갖는다. 우선순위가 높을수록 더 많은 시간을 할당 받고 동일한 양을 가질경우 먼저 끝난다. 1 우선순위: Thread.MIN_PRIORITY 5 우선순위: Thread.NORM_PRIORITY 10 우선순위: Thread.MAX_PRIORITY void set.. 2022. 5. 9.
Generic - [제네릭] 기본 어디에 쓰이나? 바나나가 있다고 가정해보자. 이 경우 우리는 바나나를 저장할 수 있는 클래스를 만든다. 하지만 그 클래스는 바나나만 다루기 때문에 수박이 생길 경우 같이 관리할 수 없다. 물건의 가짓수 만큼 클래스를 생성해야 된다는 의미이다. 이처럼 여러가지 물건들을 유연하게 관리하기 위해 사용하는 것이 제네릭이다. 정의 클래스/인터페이스: 클래스명/인터페이스명 다음에 입력 객체 생성 클래스명 다음에 사용자가 필요한 실제 제네릭 타입을 적어준다 ## 제네릭은 클래스 내에 사용되는 타입을 객체 생성 때 정의한다. 활용 바나나, 수박 클래스를 생성하고 각각의 객체를 추가해 가져왔다. 2022. 5. 9.
Thread 쓰레드 CPU를 사용하는 최소 단위 동시 실행에 필요 동시성과 병렬성을 가짐 방법 1. Thread 상속 Thread 클래스를 상속 받고 그 안에 run() 오버라이딩 하기 Thread 2개일 때 run() 메서드를 오버라이딩 하는 클래스를 만든다. 이 안에 하나의 행동을 프로그래밍 한다. 3. main 메서드에 쓰레드 객체 생성/시작 4.이곳에 동시에 진행될 것을 또 프로그래밍한다. Thread 3개일 때 run() 메서드를 오버라이딩 하는 클래스를 만든다. 이 안에 하나의 행동을 프로그래밍 한다. 또다른 Thread를 상속하는 클래스를 만들어 run() 메서드를 오버라이딩한다. 메인에 들어갔던 계시글 실행코드를 이 넣어준다. 4. main 메서드에는 쓰레드 객체만 생성/시작 방법 2. Runnable.. 2022. 5. 6.
반응형