views:

274

answers:

3

what is the difference between create thread using thread.start and using background worker ?

+8  A: 

Assuming you are talking about .NET a BackgroundWorker uses a thread from the thread pool (it doesn't create a new thread but it might block if there are no threads available in the pool) while Thread.Start starts a new managed thread.

Darin Dimitrov
+2  A: 

A background worker uses a thread from the thread pool. Thread pool threads are regular threads but as they are reused the cost of starting them is amortized. As the cost of starting a thread may be significant the thread pool is ideal for short running tasks.

Brian Rasmussen
+1  A: 

the big advantage of BackgroundWorker is that you can call GUI code in it's ProgressChanged event handler.

Benny