본문 바로가기

전체 글

(59)
[Java] 멀티스레드(Thread) 기초와 동기화(Synchronization) [Java] 멀티스레드(Thread) 기초와 동기화(Synchronization)1. 멀티스레드란?Java에서는 하나의 프로그램 안에서여러 작업을 동시에 처리할 수 있도록 Thread를 지원합니다.멀티스레드는 CPU 자원을 효율적으로 사용하게 하며,UI 응답성 향상이나 병렬 작업 처리에 적합합니다.2. Thread 생성 방법✔ 방법 1: Thread 클래스 상속class MyThread extends Thread { public void run() { System.out.println("Thread 실행 중"); }}public class Main { public static void main(String[] args) { MyThread t1 = new MyTh..
ORA-00060: Deadlock Detected 오류 해결 방법 [SQL] ORA-00060: Deadlock Detected 오류 해결 방법1. ORA-00060 오류란?ORA-00060 오류는 두 개 이상의 트랜잭션이 서로의 자원을 점유한 상태에서,각자 상대방의 자원이 해제되기를 기다리면서 무한 대기 상태에 빠질 때 발생합니다.이를 데드락(Deadlock)이라고 합니다.2. 데드락이 발생하는 상황서로 다른 세션이 같은 테이블을 동시에 업데이트하거나,순서가 다른 트랜잭션 간에 서로 락을 걸면서 발생합니다.-- Session ABEGIN;UPDATE employees SET salary = salary + 100 WHERE id = 1;-- 동시에 Session B에서 실행BEGIN;UPDATE employees SET salary = salary + 200 WHER..
[알고리즘] DFS vs BFS : 차이점 및 언제 사용해야 할까? [알고리즘] DFS vs BFS: 차이점 및 언제 사용해야 할까?1. DFS와 BFS란?DFS(Depth-First Search)와 BFS(Breadth-First Search)는그래프(또는 트리) 탐색 알고리즘입니다.이 두 알고리즘은 자료구조 문제에서경로 탐색,연결 요소 찾기,최단 거리 구하기 등 다양한 문제에 활용됩니다. 2. DFS (Depth-First Search, 깊이 우선 탐색)DFS는 한 방향으로 끝까지 탐색한 뒤,더 이상 갈 곳이 없을 때 이전으로 돌아가며 탐색을 이어갑니다.**스택(Stack)** 또는 **재귀(Recursion)** 를 활용합니다.✔ DFS 예제 (재귀 방식)public class DFSExample { static boolean[] visited = new bo..