A background worker is basically a stream with the addition that it will call back when it is completed, and this callback will be in the context of the UI so that you can update the UI after completion.
If you need this callback after completion in the context of the UI thread, use it. Otherwise, you should just use a regular thread.
David thielen
source share