Linked by Thom Holwerda on Sun 9th Sep 2007 18:08 UTC, submitted by koki
BeOS & Derivatives "The primary intention of my previous article was to make it very clear why and when locking is needed in multithreaded applications. In this article, I want to present my experiences in writing a new prototype for a replacement of the document model in WonderBrush and how it is manipulated and rendered asynchronously."
Thread beginning with comment 269974
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Sounds overly complicated
by Savior on Mon 10th Sep 2007 16:28 UTC in reply to "RE: Sounds overly complicated"
Savior
Member since:
2006-09-02


The downside of single-threaded applications (or even single-threaded updating of the GUI) can clearly be seen in Windows, where such behaviour is very common.

Single-threaded behaviour results in this: On Windows XP, you can't even move a window on screen if it's single threaded application blocks on something.
...
A typical application window in Windows goes white under heavy load or under a longer process (liking unpacking an archive) because unpacking happens in the same thread as the GUI-updating.

While I agree with the statement about single threaded application completely, I fail to see the problem with the one GUI thread - many worker thread approach. And you did not explain that in your comment either.

I find it, once learned, easier to use, since you separate the presentation logic from the business logic clearly. If you have x threads in your application, each of which may or may not access the GUI, that can make the code much more difficult to understand.

As a sidenote, I have always found Windows applications quicker than Linux ones, at least on the GUI. And Linux applications are not free of the single threaded problem, either. Especially package managers: I have yet to see one that can update its screen properly while querying the package list. I have not used BeOS, but I will try Haiku as soon as it is ready; it would be nice to have an OS that is really desktop-oriented.

Reply Parent Score: 1