Aha!  Greg, you've given me the clue I needed.  I never thought to look into 
how to trigger a garbage collect.  I assumed (incorrectly) that it was 
something hidden away from users and that I couldn't do anything about it.  
Researching more, I see that I can indeed trigger a garbage collect myself, etc.

Thank you for looking at this and coming to the same conclusion that I have 
about the garbage collect causing the crashes.  

Wow, I really appreciate this.  I've spent weeks/months on this problem off and 
on.

-mike



-----Original Message-----
From: Tkinter-discuss 
<tkinter-discuss-bounces+mike_barnett=hotmail....@python.org> On Behalf Of Greg 
Ewing
Sent: Sunday, December 15, 2019 5:39 PM
To: tkinter-discuss@python.org
Subject: Re: [Tkinter-discuss] The Async delete problem....

On 16/12/19 11:18 am, Mike Barnett wrote:
> There are no tkinter calls made from any thread other than the main thread.

It looks like some tkinter objects are becoming part of garbage cycles, and 
getting collected by whatever thread happens to be running when the cyclic gc 
kicks in.

Seems to me this is fundamentally tk's fault for assuming that __del__ methods 
will be called from any particular thread.

As a workaround, maybe you could manually trigger a gc whenever you dispose of 
a widget.

--
Greg
_______________________________________________
Tkinter-discuss mailing list
Tkinter-discuss@python.org
https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.python.org%2Fmailman%2Flistinfo%2Ftkinter-discuss&amp;data=02%7C01%7C%7Cceb5540d0dbd43ea8f0208d781afad89%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637120463832895147&amp;sdata=b8%2BnDr1VkUzIBS5ut1e4fg%2FeUhUDx%2BkNeE6f56370%2FQ%3D&amp;reserved=0
_______________________________________________
Tkinter-discuss mailing list
Tkinter-discuss@python.org
https://mail.python.org/mailman/listinfo/tkinter-discuss

Reply via email to