| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- std::map
- thread
- 기술면접
- 자료구조
- c#
- std::unordered_map
- MonoBehaviour
- 배열
- 프래그멘테이션
- 객체지향
- 해쉬맵
- 알고리즘
- 벡터
- vector
- 리스트
- 스택영역
- rookiss
- 반복문
- Queue
- 스택
- static_cast
- list
- 큐
- map
- 멀티쓰레드
- 공부
- 인프런
- 힙영역
- 트리
- 차이점
- Today
- Total
목록thread (3)
호빵의 IT 개발소
락(Lock) vs 스레드(Thread) 차이점 요약역할스레드: 작업 실행 단위, 프로그램의 실행 흐름락: 동기화 도구, 여러 쓰레드가 공유 자원에 동시에 접근하지 못하게 제어관련성락은 여러 쓰레드 간의 경합을 조절하기 위해 사용됨스레드 자체는 실행 단위일 뿐 동기화 기능은 없음사용 목적스레드: 병렬 처리, 성능 향상락: 데이터 무결성 유지, 동기화 면접 스타일 답변 예시:스레드는 프로그램 내에서 실행 흐름을 나누기 위한 단위이고 락은 여러 스레드가 동시에 공유 자원에 접근할 때 발생할 수 있는 경합을 방지하기 위한 동기화 메커니즘입니다.즉 스레드는 실행을 담당하고 락은 실행 중인 스레드 간의 자원 접근을 조절하는 역할을 합니다. 멀티 스레드 환경에서는 락을 적절히 사용하여 데이터 무결성을 보장하는 것..
프로세스(Process) vs 스레드(Thread) 차이점 요약정의프로세스: 실행 중인 프로그램의 독립된 작업 단위스레드: 프로세스 내에서 실행되는 작업의 최소 단위메모리 구조프로세스: 각자 독립된 메모리 공간 사용스레드: 프로세스 메모리를 공유 (코드, 힙 등 공유 / 스택은 개별)자원 소비프로세스: 생성/전환 시 오버헤드 큼스레드: 상대적으로 가볍고 빠름통신 방식프로세스 간: IPC(파이프, 소켓 등) 필요스레드 간: 메모리 공유로 직접 접근 가능 면접 스타일 답변 예시:프로세스는 운영체제가 자원을 관리하는 기본 단위로 각 프로세스는 독립적인 메모리 공간을 가지고 실행됩니다. 반면 스레드는 프로세스 내에서 실행되는 실행 단위이며 같은 메모리 공간을 공유하기 때문에 자원 접근이 빠르고 효율적입니다.다..
- 일반적으로 1개 프로세스(CPU 코어)는 1개 쓰레드를 가지고 작업을 수행합니다. (가장 이상적인 상황) - 멀티 쓰레드는 1개 프로세스에 2개 이상의 쓰레드를 가지고 작업을 수행합니다. 쓰레드를 사용하는 3가지 방법 1. Thread 예시 using System; using System.Threading; using System.Threading.Tasks; namespace ServerCore { class Program { static void MainThread(object state) //쓰레드가 할일 { for(int i = 0; i < 5; i++) Console.WriteLine("Hello Thread!"); } static void Main(string[] args) { Thread..