Re: Proposal for thread-safe Tkinter

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Steve Holden

    Re: Proposal for thread-safe Tkinter

    Allen Taylor wrote:
    I was given the task of upgrading a Python/Tkinter GUI application to
    the latest versions of Python and Tk. After a while, I realized that the
    application had not been written in a thread-safe manner. Multiple
    threads would simply use the Tk object directly. The application
    apparently ran fine (i.e., didn't crash!) using older versions of Python
    (2.2) and Tk (8.3), but it started to have serious problems (i.e.,
    crashing) after using the latest versions.
    >
    The problem is that there isn't enough budget to fix the whole
    application. So, I invested a bit of time to develop mtTkinter, a
    thread-safe version of Tkinter. Importing mtTkinter actually modifies
    the original Tkinter in such a way to make it thread-safe, recognizing
    and diverting out-of-thread calls to the Tk object creation thread via a
    queue and an 'after' event. I think it works quite well, requiring
    basically no changes to the application other than to import mtTkinter
    instead of (or in addition to) Tkinter. Even packages that use Tkinter
    (e.g., Pmw) benefit.
    >
    I would like to contribute this module (single file, about 160 lines) to
    the Python community, but I don't know how. I'm new to Python and am not
    initiated in the deep Pythonic developer world. Can someone give me some
    pointers? Many thanks.
    >
    You can publish it in the Python package index - see

    The Python Package Index (PyPI) is a repository of software for the Python programming language.


    If you want to have it considered for inclusion into future versions of
    Python then you should post a bug to bugs.python.org wiht your patch as
    an attachment and the test of the above mail as a rationale for the change.

    Thanks for going to these lengths to contribute!

    regards
    Steve
    --
    Steve Holden +1 571 484 6266 +1 800 494 3119
    Holden Web LLC http://www.holdenweb.com/

Working...