본문 바로가기
반응형

멀티스레드2

C# Web API 구조 - 비동기, 멀티스레드, 쓰레드 풀 C# Web API의 구조에 대해서C# Web API은 비동기, 멀티스레드, 스레드 풀을 다 사용한다. 비동기, 멀티스레드, 쓰레드 풀을 사용하면 애플리케이션의 성능, 응답성, 확장성을 크게 향상할 수 있기 때문이다. 각 개념의 장점과 이를 사용할 때의 이점에 대해서 알아보자.비동기(Asynchronous)비동기 프로그래밍은 작업이 완료될 때까지 스레드가 대기하지 않고, 그동안 다른 작업을 처리할 수 있도록 하는 방식이다.C#이 제공하는 async/await 패턴을 사용하여 CPU 사용률을 최적화 할 수 있다.높은 처리량 : CPU가 대기 중인 작업을 처리하는 대신 다른 작업을 수행I/O 작업 최적화 : 비동기 방식은 CPU를 차단하지 않고, 네트워크 요청 또는 파일 읽기/쓰기를 기다리는 동안 다른 작업.. 2025. 1. 3.
스레드(Thread)란 스레드(Thread)란?오늘날의 운영체제들은 프로세스를 효율적으로 사용하고, 작업의 유연성을 얻기 위해 멀티스레드를 지원한다.스레드의 정의프로세스가 생성되면 CPU 스케줄러는 프로세스가 해야 할 일을 CPU에 전달하고, 실제 작업은 CPU가 수행한다. 이때 CPU 스케줄러가 CPU에 전달하는 일 하나가 스레드이다. 그러므로 CPU가 처리하는 작업 단위는 프로세스로부터 전달받은 스레드인 것이다. 운영체제의 입장에서 작업 단위는 프로세스이고, CPU입장에서의 작업 단위는 스레드인 것이다.따라서 프로세스 입장에서는 스레드를 다음과 같이 정의할 수 있다. 스레드 : 프로세스의 코드에 정의된 절차에 따라 CPU에 작업 요청을 하는 실행 단위.작업(job)의 크기크기 순서로 나열하면 다음과 같다.Thread(ope.. 2023. 7. 31.