mark worker threads as daemons so they don't block termination of the process/main thread indefinitely