TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: David Noon
from: Bill Christensen
date: 1996-11-21 11:00:00
subject: blockreading from a pipe

DN> JP>    This is because once a process *writes* that number of
bytes into the
DN> JP>    pipe, further writes will be blocked until the data have
been read from
DN> JP>    the other end.
DN> 
DN> The thread writing the data to the pipe and the thread reading it
DN> should be totally asynchronous. The write thread being blocked due
DN> to full buffers should not cause the reading thread to be resumed
DN> prematurely.
DN> 
DN> While I don't doubt that what you say is the likely cause of what
DN> Udo is seeing, it seems to me like a design flaw in OS/2's pipe
DN> support.  
To be totaly asynchronous use the DOSQUEUE APIs.  The receiving thread
can checks its queue, whenever it wants to, and will get a pointer to
the databuffer, in shared memory, that the writing thread setup,and is
willing to share.  Totally asynchronous and the only data moving is a
message structure telling the receiving thread where the data is and
who sent it.  


Internet address wchriste{at}eagle.wbm.ca

___
 X KWQ/2 1.2i X  * Spelling problems? use "error-correcting" modems!

--- Maximus/2 2.02
* Origin: OS/2 Shareware BBS, telnet://bbs.os2bbs.com (1:109/347)
SEEN-BY: 50/99 270/101 620/243 625/160 711/401 409 410 413 430 808 809 934
SEEN-BY: 711/955 712/407 515 624 628 713/317 800/1
@PATH: 109/347 18 7 396/1 270/101 712/515 711/808 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.