울음참고 개발공부
스레드의 여러가지 상태
3.multi-threading 2023. 7. 26. 09:30

스레드(Thread) 는 프로세스 내에서 실행되는 작은 실행 단위로, 프로세스의 자원을 공유하면서 병렬로 실행될 수 있도록 합니다. 스레드는 여러가지 상태를 가지며, 이는 스레드의 실행 상태에 따라 다양하게 변화합니다. [ 스레드의 다양한 상태 ] 1. 생성(New) 스레드가 아직 시작되지 않은 초기 상태 스레드 객체가 생성되었지만 start() 메서드를 호출하여 실행되기 전 상태 2. 실행(RUNNABLE) 스레드가 실행 가능한 상태 실행 가능한 스레드는 프로세서의 할당을 기다리고 있으며, 스케줄러에 의해 선택되어 실행될 준비가 되어있음 3. 대기(BLOCKED/WAITING/TIMED_WAITING) 스레드가 다른 이벤트를 기다리는 상태 스레드가 락을 얻지 못한 상태나 특정 조건을 만족하기 위해 일시..

article thumbnail
⭐⭐ 코딩 기초 트레이닝 > 배열 만들기 2 - Java / matches 함수

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.ArrayList; import java.util.Arrays; class Solution { public int[] solution(int l, int r) { ArrayList resultList = new ArrayList(); for (int i = l; i

코딩 기초 트레이닝 > 카운트 업 -Java

https://school.programmers.co.kr/learn/courses/30/lessons/181920 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr class Solution { public int[] solution(int start, int end) { int[] answer = new int[end-start+1 ]; for(int i=0; i

코딩 기초 트레이닝 > 수열과 구간 쿼리 4 - Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr class Solution { public int[] solution(int[] arr, int[][] queries) { for (int i=0; i

runnable과 callable의 차이는 ?
3.multi-threading 2023. 7. 25. 09:24

"Runnable"과 "Callable"은 모두 Java 프로그래밍 언어에서 사용되는 인터페이스로, 스레드를 생성하고 실행하기 위해 사용됩니다. 하지만 각각의 차이점이 있습니다. Runnable Java 에서 멀티스레드를 구현하기 위해 사용되는 인터페이스 Runnable 인터페이스를 구현하는 객체는 'run()'메서드를 구현해야 함 run() 메서드 안에는 스레드가 실행할 코드가 들어감 run() 메서드를 실행하는 스레드는 start() 메서드를 호출하여 시작할 수 있음 public class MyRunnable implements Runnable { @Override public void run() { // 스레드가 실행할 작업을 여기에 구현 } public static void main(String[..

코딩 기초 트레이닝 > 수열과 구간 쿼리 3 - Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 방법 1) 직관적으로 바로 풀기 class Solution { public int[] solution(int[] arr, int[][] queries) { int a,b,temp; for(int i=0; i

article thumbnail
⭐코딩 기초 트레이닝 > 수열과 구간 쿼리 2 - Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 이해하는 것 부터 시간이 걸린 문제 queries 의 배열이 다음과 같을 때, query 에서 s,e,k 의미 s = 각 행의 1열에 해당하는 수 -> 0,0,0 e = 각 행의 2열에 해당하는 수 -> 4,3,2 k = 각 행의 3열에 해당하는 수 -> 2,2,2 arr[] 배열과 함께 예제를 살펴보자 첫번째로 query = [ 0,4,2] 에서 i의 범위는 0

article thumbnail
데몬 스레드란? / 스레드를 만드는 방법
3.multi-threading 2023. 7. 24. 14:30

데몬 스레드(Demon thread) 컴퓨터 프로세스 내의 백그라운드에서 싱행되는 스레드 주로 백그라운드 작업을 처리하거나 다른 스레드들을 돕는 역할 데몬 스레드는 일반 스레드와 다르게, 해당 프로세스의 모든 일반 스레드가 종료되면 자동적으로 종료됨 시스템 리소스를 관리하거나 백그라운드에서 주기적으로 실행되어 작업을 처리함 예 ) 웹 서버는 메인 스레드에서 클라이언트 요청을 처리하는 동안 데몬 스레드가 로그 파일을 유지하거나 쓰레기 수집과 같은 자동화된 작업을 처리하는데 사용됨 데몬 스레드는 일반 스레드의 보조적인 역할을 하며, 일반 스레드들이 작업을 마친 후에도 백그라운드에서 동작하는데 사용됨 언어나 프레임워크에 따라 데몬 스레드를 생성하는 방법이 다를 수 있으며, 대부분의 프로그래밍 언어와 스레드 지..