[haiku-appserver] Re: drawing thread

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Thu, 21 Oct 2004 15:22:23 +0200 CEST

Adi Oanca <adioanca@xxxxxxxxxxxxx> wrote:
> > Locking, semaphores. Only one thread draws in the graphicsRAM at a 
> > time.
>       OK. Perfect! That would be Poller Thread if DW agrees.

Not really, there can still be any number of threads - they just have 
to be serialized when accessing the same buffer.

Anyway, you could also use double buffering by only having one copy of 
the whole screen around in main memory - I don't know if it makes more 
sense to have different bitmaps for every layer, because that would 
make transparent stuff a lot harder to do.

When you have a setup like this, all threads could even simultaneously 
access the main memory, since they will all only access their clipping 
region (with potential speed restrictions as well, just like video 
memory, but less drastic). Only if there are more than one thread 
accessing the same region (which can only happen because of 
transparency), they would have to be serialized.
Of course, having more than one thread drawing off-screen would be 
great for systems with more than one CPU.


Other related posts: