| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| 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™.