Foreground vs Background threads

Thread pool threads are background threads.

Concerning exception behavior, no difference exists between background and foreground threads: Unhandled exceptions in either of them terminate the entire process.

The only altered behavior of a background thread is that it won’t keep the process from being terminated after all foreground threads have quit. In other words, a foreground thread can keep a process alive until it exits, whereas a background thread can’t.