Note that there are some explanatory texts on larger screens.

plurals
  1. POWhat would a multithreaded UI api look like, and what advantages would it provide?
    text
    copied!<p>Or, equivalently, how would you design such an API. Expected/example usage would be illustrative as well.</p> <p>My curiosity comes directly from the comments (and subsequent editting on my part) of this <a href="https://stackoverflow.com/questions/1105422/what-is-the-case-against-f/1105468#1105468">answer</a>. Similar <a href="https://stackoverflow.com/questions/58711/how-would-you-design-a-very-pythonic-ui-framework">questions/discussions</a> in the past provide a bit of inspiration to actually asking it.</p> <p>Executive summary:<br> <em>I don't feel a multithreaded UI api is possible in a meaningful way, nor particularly desirable. This view seems somewhat contentious and being a (relatively) humble man I'd like to see the error of my ways, if they actually are erroneous.</em></p> <p><sub>*Multithreaded is defined pretty loosely in this context, treat** it however makes sense to you.</sub></p> <hr> <p><s>Since this is pretty free-form, I'll be accepting whichever answer has the most coherent and well supported answer in my opinion; regardless of whether I agree with it.</s></p> <p><strong>Answer Accepted</strong></p> <hr> <p>**Ok, perhaps more clarification is necessary.</p> <p>Pretty much every serious application has more than one thread. At the very least, they'll spin up an additional thread to do some background task in <em>response</em> to a UI event.</p> <p><strong>I do not consider this a multithreaded UI.</strong></p> <p>All the UI work is being done on single thread still. I'd say, at a basic level, a multithreaded UI api would have to do away with (in some way) thread based ownership of UI objects or dispatching events to a single thread.</p> <p>Remeber, this is about the UI api itself; not the applications that makes use of it.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload