2025/01 3

이벤트 루프 vs 쓰레드풀 매커니즘 비교

이벤트 루프(Event Loop)와 쓰레드 풀(Thread Pool)은 병렬 작업과 동시성을 처리하는 두 가지 주요 매커니즘입니다.이들은 각각 다른 설계 철학과 구현 방식을 기반으로 동작하며, 사용 사례에 따라 장단점이 있습니다.아래에서 두 방식의 작동 원리와 차이점을 비교하여 설명하겠습니다.1. 이벤트 루프(Event Loop)작동 원리단일 쓰레드 기반:이벤트 루프는 하나의 쓰레드에서 모든 작업을 처리합니다.작업이 블로킹되지 않도록 비동기적 방식으로 요청을 처리합니다.작업 큐(Task Queue):작업 요청이 들어오면 작업 큐에 등록됩니다.이벤트 루프는 큐에 저장된 작업을 하나씩 가져와 처리합니다.비동기 I/O:I/O 작업(네트워크, 파일 등)을 비동기로 실행하여 완료 시 콜백이나 프라미스(약속된 작업..

카테고리 없음 2025.01.06

언어별 멀티쓰레드 프로그래밍 구현방식

언어별로 멀티쓰레드 프로그래밍 구현 방식은 해당 언어의 철학, 런타임 환경, OS 지원, 그리고 기본적으로 제공하는 쓰레딩 API에 따라 달라집니다. 주요 언어들에서의 차이를 살펴보겠습니다:1. C/C++방식: POSIX Threads(Pthreads) 또는 Windows API를 주로 사용.특징:저수준 API 제공으로 세밀한 제어 가능.Pthreads는 Unix 계열 시스템에서 표준.Windows에서는 CreateThread 같은 Windows API를 사용.성능이 뛰어나지만 메모리 관리나 동기화 문제는 개발자 책임.동기화:Mutex, Condition Variable, Semaphore 사용.스레드 안전성을 위해 철저한 관리 필요.2. Java방식: Java는 자체 JVM 쓰레드 관리 시스템을 제공...

카테고리 없음 2025.01.06

Blazor WebApp 그리고 @rendormode

Blazor WebApp을 프로젝트를 생성,@rendermode의 차이를 경험해보고 싶었으나, 여러 제약사항들 걸리면서 개념을 정리해보기로 했다. 렌더링 방식은 총 4가지@rendermode 미지정 - Static SSR - 정적 서버렌더링 대화형 X@rendermode InteractiveServer - 대화형 SSR@rendermode InteractiveWebAssembly - 대화형 CSR@rendermode InteractiveAuto - 대화형 SSR+CSR (번들 다운로드 상태에 따라, 자동) CSR을 사용하기 위해서는 별도의 Client프로젝트(WebAssemblyHost 사용) 구성하여야 한다.Client프로젝트는 wasm으로 빌드되어, 클라이언트에게 전달되어 CSR이 되는 방식, 고로 ..

카테고리 없음 2025.01.03