비동기(4)
-
[C#] 실전 미니 프로젝트 - 파일 관리 도구 만들기
앞서 배운 내용을 종합해서 이번에는 C#으로 간단한 파일 관리 프로그램을 만들어봅니다.이 프로젝트를 통해 클래스, 메서드, 예외처리, 파일 입출력, 비동기 처리까지 실제로 적용해볼 수 있습니다.1. 프로젝트 목표특정 폴더의 모든 파일 목록 읽기파일 이름, 크기 출력하기파일 복사 기능 추가하기 (비동기)파일 삭제 기능 추가하기2. 기본 구조 설계 FileManager 클래스 만들기using System;using System.IO;using System.Threading.Tasks;public class FileManager{ private string _directoryPath; public FileManager(string directoryPath) { _directoryP..
2025.04.17 -
[C#] 비동기와 병렬 처리, 그리고 Task vs Thread 차이 완전 정리
C#을 제대로 이해하려면 꼭 알아야 할 개념이 있습니다.바로 비동기(Async)와 병렬(Parallel) 처리의 차이와 Task vs Thread 입니다.이번 글에서는 이 둘을 쉽게 비교하고, 각각 언제 사용하는지 명확하게 정리합니다.1. 비동기(Async) 처리란?"메인 작업을 멈추지 않고, 시간이 오래 걸리는 작업을 기다리는 방식"하나의 쓰레드가 긴 작업을 기다리지 않고 다음 작업으로 넘어감UI 멈춤 방지, 사용자 경험 향상에 필수주로 IO 작업(파일, DB, 네트워크 요청) 에 사용 비동기 예시async Task DownloadFileAsync(){ await Task.Delay(3000); // 3초 다운로드 시뮬레이션 Console.WriteLine("다운로드 완료");}메인 스레드..
2025.04.17 -
[C#] 비동기 프로그래밍 완벽 가이드
async와 awaitC#에서는 비동기 작업을 간단하고 깔끔하게 처리할 수 있는 키워드가 있습니다.바로 async와 await입니다.이번 글에서는 비동기 프로그래밍의 필요성과 함께, async/await 사용법을 예제와 함께 쉽게 정리합니다.1. 비동기 프로그래밍이란?"긴 작업을 백그라운드에서 처리하면서, 메인 프로그램은 멈추지 않게 하는 것"파일 다운로드, 데이터베이스 조회, 웹 API 호출처럼 시간이 오래 걸리는 작업은 비동기 처리 필수비동기를 쓰지 않으면 UI가 멈추거나 프로그램이 느려짐 2. async와 await 기본 구조 기본 형태async Task 작업이름(){ await 긴작업();}async 키워드는 메서드를 비동기로 만듦await는 비동기 작업이 끝날 때까지 기다렸다가 다음 코드를..
2025.04.17 -
[C#] Task와 Parallel.For 설명 및 활용법
C#으로 개발하다 보면 Task와 Parallel.For는 자주 접하게 됩니다.특히 비동기 처리나 대량 데이터 처리, UI 멈춤 방지를 할 때 필수적으로 사용되죠.이 글에서는 두 개념을 확실히 구분하고, 실제로 어떻게 사용하는지 코드 예시와 함께 정리해보겠습니다.1. Task - 비동기 프로그래밍의 기본 단위-. Task란?Task는 .NET에서 비동기 작업을 처리하기 위한 대표적인 클래스입니다.쉽게 말하면, "이 작업은 백그라운드에서 처리하고 끝나면 알려줘" 라는 개념입니다.-. 핵심 특징비동기 실행: UI 쓰레드를 막지 않음await로 작업 완료 기다릴 수 있음Task.Run으로 쉽게 실행 가능-. 사용 예제// 무거운 작업을 백그라운드에서 실행await Task.Run(() =>{ Long..
2025.04.17