2009-06-10 3 views
0

스레딩 또는 비동기 프로그래밍에 대한 더 나은 접근 방법은 무엇입니까?.net의 비동기 프로그래밍, 스레딩에 관한 질문

특히 데이터베이스 작업에서이 두 방법을 모두 사용할 수 있습니다.

내 이해가 맞습니까?

몇 가지 지침을 알려주십시오. 모든 시나리오에서 우리는 스레딩을 사용하고 모든 시나리오에서 비동기 프로그래밍이 좋습니까?

감사 SC

+3

+ close : 질문의 유사성은 없습니다. – Juliet

답변

2

스레딩 및 비동기 프로그래밍은 본질적으로 같은 일이다. 스레딩은 비동기 프로그래밍을 가능하게하는 엔진입니다.

백그라운드 작업을 시작해야하는 상황에서이 작업을 사용하면 사용자가 작업 완료를 기다릴 필요없이 다른 작업으로 이동할 수 있습니다.

Joseph Albahari's tutorial on threading in C#은 학습을 시작하기에 좋은 장소입니다.

0

작은 하드웨어 리소스로 상당한 확장 성이 필요하다면 비동기 모델은 뛰어나지 만 복잡성은 희생됩니다. 확장 할 필요가없는 경우 스레드로 I/O 차단에 중점을두면 사용자의 요구를 충족시킬 수 있습니다. 확장 성의 개념은 매우 다양합니다. 이것은 신속하게 당신이 달성하고자하는 것을 기반으로 연구를 필요로 다소 깊은 주제가 될 수 있습니다. 비동기 IO의 기본 사항은 here입니다. 단일 서버로 수천 개의 네트워크 요청을 동시에 처리해야합니까? 그렇다면 비동기 I/O가 필요할 수도 있습니다. 당신은 데이터베이스 작업을 언급 ... 일반적으로, 대부분의 DB 구현은 당신에게 비동기 옵션을 제공하지 않습니다. 귀하의 모호한 질문을 감안할 때, 나는 구체적인 대답을 생각하지 않습니다. 모든 것과 마찬가지로 ... 그것은 다릅니다.