Daemon parameter in threading.Thread() function isn't working while code is executing in a .ipynb file

I think the output should be

08:31:35: Main : before creating thread
08:31:35: Main : before running thread
08:31:35: Thread 1: starting
08:31:35: Main : wait for the thread to finish
08:31:35: Main : all done

But actually the output is

08:31:35: Main : before creating thread
08:31:35: Main : before running thread
08:31:35: Thread 1: starting
08:31:35: Main : wait for the thread to finish
08:31:35: Main : all done
08:31:45: Thread 1: finishing

in ipynb file.