TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Alan Clifford
from: Peter Fitzsimmons
date: 1996-03-23 06:19:40
subject: Threads

AC> printf from each thread at a time.  What this is 
 AC> leading up to is reading from the serial port into a

As long as the com port (ie: com.sys) is in a blocking mode (ie: not
"no wait" mode),  this will work great -- without any sleeps.

 AC> buffer in one thread and taking the character out in 
 AC> another - is this the right way to go?

Sure thing.  Put the com port in "wait for something" mode,  ask
for a big buffer (a few kb),  and have the "modem thread" post a
sem when it got some data.  You will have to protect the buffer the two
threads share with an mutex sem.

 AC> example code where the author uses a DosEnterCritSec

DosEnterCritSec() is a bad practice,  it is NEVER _required_ (you can
always use a sem instead),  and shoots SMP OS/2 in the foot.


 I have some  AC> in the input thread but nothing in the output thread.
 AC> Isn't that a bit dangerous?

It's not dangerous;  it's just lazy & stupid.

--- Maximus/2 3.00
* Origin: Sol 3 * Toronto * V.32 * (905)858-8488 (1:259/414)
SEEN-BY: 50/99 78/0 270/101 620/243 711/401 409 410 413 430 808 809 934 955
SEEN-BY: 712/407 515 517 628 713/888 800/1 7877/2809
@PATH: 259/414 400 99 250/99 3615/50 396/1 270/101 712/515 711/808 809 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™.