async private void funcName(){
await Task.Run(()=>{
//코드
})
}
모든 함수 이런식으로 해놨는데
그럼 프로그램 속도 느려짐?
왜느려지냐
ㄴ 나도모름 그냥 왠지 느려질꺼같아서? 비동기가 사용 쓰레드 갯수 늘리는거아니야?
비동기랑 멀티스레드랑 다른 거임
유행하는 파이썬 asyncio 같은게 싱글 스레드 비동기 IO
코루틴으로 구현한다면 하나의 스레드에서 여러개의 코루틴들이 돌아가며 그 스레드의 제어권을 가지게 되는 식이지
비동기 IO의 관리비용은 멀티프로세싱이나 멀티스레딩의 관리비용보다 훨 싸기 때문에, IO 대기가 많은 작업을 한다면 적극적으로 써보는 것도 괜찮음
어느언어든 비동기는그냥 쓰레드 한개로 병렬+이벤트 처리하는건가?
ㄴ 아님 - return 0;
비동기랑 스레딩이랑 별도라는 걸 설명하려고 한거지 꼭 스레드가 하나일 필요는 없음 애초에 분류의 층위 자체가 다름
IO 없는 프로그램에서는 오히려 느리겠져 뭐 ㅎㅎ
io 없는데 걍 다 비동기로해서 개망각?
왜느려지냐
ㄴ 나도모름 그냥 왠지 느려질꺼같아서? 비동기가 사용 쓰레드 갯수 늘리는거아니야?
비동기랑 멀티스레드랑 다른 거임
유행하는 파이썬 asyncio 같은게 싱글 스레드 비동기 IO
코루틴으로 구현한다면 하나의 스레드에서 여러개의 코루틴들이 돌아가며 그 스레드의 제어권을 가지게 되는 식이지
비동기 IO의 관리비용은 멀티프로세싱이나 멀티스레딩의 관리비용보다 훨 싸기 때문에, IO 대기가 많은 작업을 한다면 적극적으로 써보는 것도 괜찮음
어느언어든 비동기는그냥 쓰레드 한개로 병렬+이벤트 처리하는건가?
ㄴ 아님 - return 0;
비동기랑 스레딩이랑 별도라는 걸 설명하려고 한거지 꼭 스레드가 하나일 필요는 없음 애초에 분류의 층위 자체가 다름
IO 없는 프로그램에서는 오히려 느리겠져 뭐 ㅎㅎ
io 없는데 걍 다 비동기로해서 개망각?