Actually, it doesn't even need to be multi-threaded to handle multiple
connections; a state machine server (like CUPS) can do it, too.
> To solve this problem, we propose a new operation attribute for the
> Send-Document (and, by extension, Send-URI) operations.
> Specifically, Integer (1..MAX) "document-number" . This is a
> document sequence number that begins with '1' for the first
> document, and is incremented by one for each subsequent document up
> to and including the document with "last-document"='true'. Thus,
> when the Printer|Job gets the final document (last-document=true),
> it can examine the document-numbers of the documents previously
> received to a) ensure that all have been received, b) determine the
> proper ordering of the documents within the Job.
We've actually been looking at this problem for our next
implementation of CUPS, and it looks like your approach will
definitely solve it elegantly.
-- ______________________________________________________________________ Michael Sweet, Easy Software Products firstname.lastname@example.org Printing Software for UNIX http://www.easysw.com