[omniORB] AIX
Boris Khanales
boris@imagine-sw.com
Wed, 5 Jan 2000 12:41:51 -0500 (EST)
I've sent out question about omni_thread::sleep.
There is some more info:
I've changed powerpc_aix_4.2.mk
OMNITHREAD_POSIX_CPPFLAGS = -DNoNanoSleep -DPthreadDraftVersion=10
Than I had to add
#if defined(__aix__)
#include <unistd.h>
#endif
in posix.cc othrwise it doesn't compile.
As you can see I'm using
#elif defined(__linux__) || defined(__aix__)
if (secs > 2000) {
::sleep(secs);
} else {
usleep(secs * 1000000 + (nanosecs / 1000));
}
#else
for sleep implementation.
The "normal" implementation is
#ifndef NoNanoSleep
if (nanosleep(&rqts, (timespec*)NULL) != 0)
throw omni_thread_fatal(errno);
#else
but it always throws exception.
I'm not AIX user/developer and I do not think I've done
right things. If sombody has any idea about right way of doing
it, I'd love to know. If i'm missin some patches or ...
Thank You.