comp.lang.ada
 help / color / mirror / Atom feed
From: Jim Rogers <jrogers@omnitech.com>
Subject: Re: Sockets in Apex
Date: 2000/02/09
Date: 2000-02-09T00:00:00+00:00	[thread overview]
Message-ID: <87sfm7$qrj$1@nnrp1.deja.com> (raw)
In-Reply-To: 87s92v$lke$1@nnrp1.deja.com

In article <87s92v$lke$1@nnrp1.deja.com>,
  reason67@my-deja.com wrote:
> I wrote a socket binding to Ada 95. I am creating an executable in
Apex
> 3.2.0b on Solaris 2.6.
>
> When I connect a non-blocking client socket in a task in the threaded
> model, errno does not seem to be set by the underlying C. When I run
in
> the non-threaded model, or I connect the client without any tasks
(just
> the main), or I make the socket block, everything works fine.
>

I believe this is because the non-blocking form of the C socket
library is not thread-safe. Specifically, the errno result is not
available to a thread, but only to a process. This would be
consistent with your results.

If this is the case, there is nothing Ada can fix. The problem is in
the C library call you bind to.

--
Jim Rogers
Colorado Springs, Colorado USA


Sent via Deja.com http://www.deja.com/
Before you buy.




  parent reply	other threads:[~2000-02-09  0:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-02-09  0:00 Sockets in Apex reason67
2000-02-09  0:00 ` Ted Dennison
2000-02-09  0:00 ` Jim Rogers [this message]
2000-02-12  0:00 ` Simon Wright
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox