I have read that people gave up on multi threaded GUIs as it was to complicated to handle the locks and stuff. That is why we ended up with a GUI thread and worker threads for long lasting operations. That is also why sometimes GUIs freeze because some action took longer as exspected and the programmer didn't move it into a worker thread.
With rusts fearless multithreading and ownership build in. Would it be possible to write a multi threaded GUI framework in rust?
So maybe it starts with a thread that does the initialization and then the frameworks creates new threads for each event. So each button clicked,.. would be a separate thread. This way a freeze-up would not be possible. Worker threads would not be needed. There would probably be a performance hit due to creating all the threads, but that is probably not an issue on most machines today. And can maybe be mitigated by using thread pools?
Or do I miss something here and it not possible. Then what am I missing? What are the reasons that this will not work?