title: Why are most UI frameworks single threaded?
body: <p>For example, Java Swing and Android UI both use a single threaded model where a single UI thread is responsible for updating all the UI. What made the framework designers chose one thread model over the other?</p>
  
  <p>Wouldn't multiple threaded UI model potentially give you more performance albeit at the cost of more complexity? I realize that the latter is a big deal because thread related bugs are <em>nasty</em> but I am wondering if there are any other advantages to single-threaded model other than simplicity? </p>