2009-12-16 20 views

Antwort

11

Sie sprechen Angenommen .NET ein BackgroundWorker verwendet einen Thread aus den thread pool (es keinen neuen Thread erstellen, aber es könnte blockieren, wenn es keine Fäden sind in dem Pool), während Thread.Start einen neuen verwalteten Thread startet.

3

Ein Hintergrund-Worker verwendet einen Thread aus dem Thread-Pool. Thread-Pool-Threads sind reguläre Threads, aber wenn sie wiederverwendet werden, amortisieren sich die Kosten für deren Start. Da die Kosten für das Starten eines Threads erheblich sein können, ist der Thread-Pool ideal für kurz laufende Aufgaben.

1

Der große Vorteil von BackgroundWorker ist, dass Sie GUI-Code in seiner ProgressChanged Event-Handler aufrufen können.