J.E.McCormack added the comment:
Attached is a minimal reproducer script which is sufficient to show the issue
clearly.
It is a simple single-thread Tkinter program with one canvas. No
multiprocessing, no shared variables, no connections between instances.
Instructions at top of
J.E.McCormack added the comment:
I can run four independent processes (i.e. not using multiprocessing, with no
links at all between them) yet the results show that only one core is running.
Where is this lock taking place? Why would a tkinter process need to know about
another tkinter
New submission from J.E.McCormack :
I am measuring multi-process GUI performance (Tkinter 8.6, Python 3.7) for
drawing lines, circles, text boxes, etc. In a fairly typical experiment on a
i7-6700HQ, 4-core (8 thread), on Windows 10 I measure 25.5k objects/sec for one
process running alone