[gs-devel] beginpage and the vector device

Ken Sharp ken.sharp at artifex.com
Fri Nov 2 10:44:36 PDT 2007


At 09:35 02/11/2007 -0700, Ray Johnston wrote:

>One efficient method for a device to catch the first marking
>operation is to hook all of the device marking procedures to
>one set of routines that signals 'page has been marked', then
>after performing the start of page stuff, set all of the
>procedures to the regular procs. This avoids performance penalty
>once the page is marked.

Not a criticism, but this is similar 'black magic' to having the stream 
accessor do the work, isn't it ? Though much cleaner, its still not 
entirely intuitively obvious. Makes debugging potentially awkward, because 
you might have to put breakpoints in two different routines. Or, like 
Ralph, spend time scrathing your head wondering why your breakpoint doesn't 
trigger :-)

It certainly avoids the performance penalty (minor though it probably is), 
but it is still slightly obscure.

Maybe we should recommend this for new development ? I don't fancy the task 
of altering all the existing code....



                         Ken

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SYSTEM CRASH (to the tune of "The Monster Mash")

I was working in the lab, late one night 
When my eyes beheld an eerie sight, 
Some smoke from our VAX began to rise 
And suddenly, to my surprise... 

[chorus]
(There was a crash) There was a system crash
(A mighty crash) I heard the disk heads smash
(A system crash) It came down in a flash
(There was a crash) A fatal system crash
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



More information about the gs-devel mailing list