유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

Thread Safe Async in .NET?

Nick Chapsas

2025. 2. 24.

0

#backend
#devops
  • .NET에서 비동기 작업의 스레드 안전성 확보는 lock 키워드로만 해결되지 않음 🔒
  • SemaphoreSlim 클래스를 이용하여 스레드 동시 접근 제어 가능 👍
  • SemaphoreSlim 생성자는 최대 동시 접근 수(1)와 초기 신호 수(1)로 설정하여 단일 스레드 접근 보장 🚦
  • await 키워드와 함께 SemaphoreSlim.WaitAsync() 사용하여 비동기적으로 락 획득 ⏳
  • try...finally 블록으로 SemaphoreSlim.Release() 메서드 호출하여 락 해제 보장 🔓
  • WaitAsync() 메서드에 Timeout 설정으로 데드락 방지 🛡️

Recommanded Videos