score:0

Tkinter.Tk().mainloop() is blocks the program from continuing while the screen updates. After calling Tk().destroy(), it will unblock and continue the program as normal, allowing you to call thread.join() there. Here as a demo of for code executing after:

from tkinter import Tk

root = Tk()

def f():
    root.destroy()

root.after(3000,f)
root.mainloop()
print("Join Thread Here")