태그: async
12편
-
Effect-TS로 Promise의 한계 넘기: 에러를 타입으로, Context 의존성 주입, Fiber 동시성
Effect-TS 정리. Promise·async/await의 한계를 넘어 에러를 타입으로, 의존성을 Context로, 동시성을 Fiber로 표현하는 함수형 TypeScript 런타임과 React·Node 적용 예제를 다룹니다.
-
FastAPI로 Python API 만들기: 타입 검증, 의존성 주입, SQLModel·asyncpg, JWT, 배포
FastAPI 정리. Pydantic과 타입 힌트 기반 자동 검증, OpenAPI 문서, 의존성 주입, SQLModel·asyncpg 데이터베이스, JWT 인증, CORS, 백그라운드 태스크, uvicorn·Docker 배포를 예제로 다룹니다.
-
C++ shared_future | 여러 스레드에서 future 결과 공유
std::future는 get()을 한 번만 부를 수 있어 여러 스레드가 같은 결과를 기다리면 문제가 됩니다. share()로 shared_future를 만들어 설정값이나 지연 계산 결과를 여러 워커가 공유하는 방법과, 예외 전파·스레드 안전성의 범위를 예제로 설명합니다.
-
RabbitMQ로 메시지 큐 구축하기: Exchange 타입, AMQP 채널, DLX·Quorum Queue, Worker 패턴
RabbitMQ로 메시지 큐를 구축하는 방법. 설치와 Node.js 클라이언트, Exchange·Queue·Binding 라우팅, AMQP 0-9-1 채널과 흐름 제어, DLX·TTL·Quorum Queue, Worker 패턴, 이메일 전송 예제와 고가용성을 다룹니다.
-
Swift async/await 흔한 실수와 디버깅 팁 | 실전 체크리스트
동기 함수에서 async를 호출하려다 막히는 문제, 기다리지 않은 Task 누수, MainActor 격리 위반, TaskGroup 에러 누락, SwiftUI onAppear에서 만든 Task, 취소 확인 누락, Sendable 위반까지 Swift 동시성의 흔한 실수 일곱 가지를 코드로 고칩니다.
-
Swift 비동기 프로그래밍 | async/await, Task
async/await와 async throws 기본에서 시작해 Task 생성, async let으로 병렬 실행하기, Actor로 공유 상태를 격리하는 방법을 설명합니다. API 클라이언트 예제와 withTaskGroup으로 여러 요청을 병렬로 모으는 예제로 실제 쓰임을 보여줍니다.
-
Rust 비동기 프로그래밍 | async/await, Tokio
Rust async/await와 Future 트레이트의 동작 원리, Tokio 런타임에서 태스크 생성과 병렬 실행, reqwest로 타임아웃·재시도가 있는 HTTP 요청, async 코드에서 Mutex·RwLock·채널을 고르는 기준을 예제로 설명합니다.
-
Node.js 비동기 프로그래밍 | Callback, Promise, Async/Await
에러 우선 콜백과 콜백 지옥, Promise 체이닝과 정적 메서드, async/await 병렬 처리와 에러 처리를 다루고, libuv 이벤트 루프 페이즈에서 process.nextTick과 Promise 마이크로태스크가 실행되는 순서를 예제로 설명합니다.
-
JavaScript 비동기 프로그래밍: 콜백, Promise, async/await
콜백 지옥이 생기는 이유에서 시작해 Promise 생성과 체이닝, Promise.all 등 정적 메서드, async/await 병렬 실행과 에러 처리를 다루고, 재시도·타임아웃·순차 처리 예제와 마이크로태스크 순서를 설명합니다.
-
C++ std::packaged_task: 작업 큐와 스레드 풀에서 future로 결과·예외 받기
std::packaged_task로 함수를 감싸 두고 원하는 스레드와 시점에 실행한 뒤 future로 결과와 예외를 받는 방법을 작업 큐와 간단한 스레드 풀로 구현합니다. 실행 누락으로 get()이 영원히 기다리는 문제, 이동 전용이라 생기는 제약도 짚습니다.
-
C++ promise와 future: 스레드 간 결과 전달, std::async 실행 정책, shared_future
std::promise로 다른 스레드의 결과나 예외를 넘기고 std::future로 받는 흐름을 설명합니다. std::async의 launch::async와 deferred 정책 차이, get()을 두 번 부를 수 없는 이유, 타임아웃 대기, shared_future로 여러 스레드가 결과를 공유하는 방법을 예제로 봅니다.
-
C++ std::async와 launch 정책: future, deferred 실행, 흔한 함정
std::async에 launch::async와 launch::deferred를 지정했을 때 실행 시점이 어떻게 달라지는지 설명하고, 여러 future 결과 모으기, 예외 전달, wait_for로 상태 확인과 타임아웃 처리, 병렬 다운로드·맵 리듀스 예제를 다룹니다.