프로그래밍/JAVA

    [Java] 쓰레드의 상태와 제어

    쓰레드 프로세스가 할당받은 자원을 이용하는 실행의 단위 쓰레드의 생성 프로세스가 작업중인 프로그램에서 실행 요청이 들어오면 쓰레드를 만들어 명령을 처리하도록 함 쓰레드의 자원 프로세스 안에는 여러 쓰레드들이 있고, 쓰레드들은 실행을 위한 프로세스 내 주소 공간이나 메모리공간(Heap)을 공유받음 추가로, 쓰레드들은 각각 명령처리를 위한 자신만의 메모리공간(Stack)도 할당 받음 쓰레드 상태 스레드 객체를 생성하고 start() 메소드를 호출하면 바로 실행되는 것이 아니라 실행 대기 상태가 된다. 실행 대기 상태란 언제든지 실행할 준비가 되어 있는 상태를 의미한다. 실행 상태의 스레드는 run() 메소드를 모두 실행하기 전에 다시 실행 대기 상태로 돌아갈 수 있고, 실행 대기 상태에 있는 다른 스레드가 ..

    클래스의 생성자

    생성자? 인스턴스화 한 오브젝트인 class() 생성자로 인스턴스를 생성하는 명령어 class name =new class() 를 실행할 때 클래스를 접근하게 되면서 사용하게 된다. 이 때 생성자 메소드를 호출하면서 클래스는 힙 영역에 할당되고 자동으로 초기화를 시켜준다. 결국 생성자는 클래스를 힙 영역에 할당하고 초기화를 해주는 작업을 하는 메소드이다. 생성자는 보통 기본 생성자와 필드 생성자로 나뉜다. 기본 생성자 클래스가 호출될 때 가장 먼저 생성자를 확인하는데 생성자를 명시하지 않았으면 자동으로 생성되어 클래스를 초기화 작업을 수행하게 되는데 이 때 컴파일은 클래스 구성 요소들을 차례대로 읽어 초기화를 수행한다. 생성자를 명시하지않고 자동으로 호출할 경우 인스턴스에 필요한 요소들을 읽어 초기화 작..