2012-10-15 3 views
0

BeginInvoke는 BackgroundWorker와 동일한 작업을 수행 할 수 있습니까? 둘 다 다른 스레드에서 비동기 작업을 수행하는 끝에 동일한 목표를 갖는 것이 아닙니다.BeginInvoke는 BackgroundWorker와 동일한 작업을 수행 할 수 있습니까?

WPF 창이 있다면 .. 두 가지 방법으로 데이터베이스에 액세스하고 싶습니다. 효과가 동일 할 것인가?

+0

하루가 끝날 때 모든 BackgroundWorker는 내부 스레드가있는 클래스입니다. BeginInvoke는 완전히 다른 목적으로 사용되며 스레드를 시작하지 않으므로 더 많은 연구를해야합니다. –

+0

@Ramhound하지만 기본적으로 BackgroundWorker는 스레드를 시작합니다. 그래서 비동기 호출은 스레드를 시작하는 것과 같습니다. 내가 말했듯이. – Rushino

답변

2

BackgroundWorker를 BeginInvoke로 대체 할 수 있지만 몇 가지 추가 코드가 필요합니다. BackgroundWorker는 백그라운드 스레드 관리를 아주 친숙한 방식으로 처리합니다.

BeginInvoke는 확실히 비동기식으로 작업을 처리 할 수 ​​있습니다. 약간 낮은 수준이므로 유연성을 더 많이 확보 할 수 있습니다 (직접 더 많은 작업을해야하는 대가로).

+0

알았어, 고마워! – Rushino

관련 문제