A background thread is a thread that not directly driving the application but does some processing asynchronously.