diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 1997-02-12 06:56:38 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 1997-02-12 06:56:38 +0000 |
commit | 8bc120eb469fb03b4aed8b3ab2056ddb065faca8 (patch) | |
tree | 3219e4485debc9013e983b56c6ac485aa06cf315 | |
parent | ba4c754283c3b43616dd759c804bf84b7392a165 (diff) | |
download | ATCD-8bc120eb469fb03b4aed8b3ab2056ddb065faca8.tar.gz |
foo
-rw-r--r-- | ace/OS.i | 3 | ||||
-rw-r--r-- | ace/Synch.cpp | 9 | ||||
-rw-r--r-- | ace/XtReactor.cpp | 4 | ||||
-rw-r--r-- | ace/XtReactor.h | 8 | ||||
-rw-r--r-- | ace/config-irix6.2-sgic++-nothreads.h | 141 |
5 files changed, 157 insertions, 8 deletions
@@ -3452,9 +3452,8 @@ ACE_OS::thr_getprio (ACE_hthread_t thr_id, int &prio) return prio == THREAD_PRIORITY_ERROR_RETURN ? -1 : 0; #elif defined (VXWORKS) ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::taskPriorityGet (thr_id, &prio), ace_result_), int, -1); -#else - ACE_NOTSUP_RETURN (-1); #endif /* ACE_HAS_STHREADS */ + ACE_NOTSUP_RETURN (-1); #endif /* ACE_HAS_THREADS */ } diff --git a/ace/Synch.cpp b/ace/Synch.cpp index 916dc2a28cb..c2d980601af 100644 --- a/ace/Synch.cpp +++ b/ace/Synch.cpp @@ -190,7 +190,8 @@ ACE_Semaphore::ACE_Semaphore (u_int count, ACE_Semaphore::~ACE_Semaphore (void) { // ACE_TRACE ("ACE_Semaphore::~ACE_Semaphore"); - this->remove (); + if (this->remove () == -1) + ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Semaphore_Mutex::~ACE_Semaphore_Mutex")); } void @@ -255,6 +256,8 @@ ACE_Process_Semaphore::ACE_Process_Semaphore (u_int count, ACE_Process_Semaphore::~ACE_Process_Semaphore (void) { // ACE_TRACE ("ACE_Process_Semaphore::~ACE_Process_Semaphore"); + // if (this->remove () == -1) + // ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Process_Mutex::~ACE_Process_Mutex")); } // Explicitly destroy the semaphore. @@ -502,6 +505,8 @@ ACE_Recursive_Thread_Mutex::ACE_Recursive_Thread_Mutex (LPCTSTR name, ACE_Recursive_Thread_Mutex::~ACE_Recursive_Thread_Mutex (void) { // ACE_TRACE ("ACE_Recursive_Thread_Mutex::~ACE_Recursive_Thread_Mutex"); + if (this->remove () == -1) + ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Process_Mutex::~ACE_Process_Mutex")); } int @@ -856,6 +861,8 @@ ACE_Thread_Mutex::dump (void) const ACE_Thread_Mutex::~ACE_Thread_Mutex (void) { // ACE_TRACE ("ACE_Thread_Mutex::~ACE_Thread_Mutex"); + if (this->remove () == -1) + ACE_ERROR ((LM_ERROR, "%p\n", "ACE_Thread_Mutex::~ACE_Thread_Mutex")); } ACE_Thread_Mutex::ACE_Thread_Mutex (LPCTSTR name, void *arg) diff --git a/ace/XtReactor.cpp b/ace/XtReactor.cpp index 33d9273ab8e..0ff8636e048 100644 --- a/ace/XtReactor.cpp +++ b/ace/XtReactor.cpp @@ -39,8 +39,10 @@ ACE_XtReactor::ACE_XtReactor (XtAppContext context, // we simply close and re-opened the notification handler in the // constructor of the XtReactor. +#if defined (ACE_MT_SAFE) this->notify_handler_.close (); this->notify_handler_.open (this); +#endif /* ACE_MT_SAFE */ } ACE_XtReactor::~ACE_XtReactor (void) @@ -158,7 +160,7 @@ int ACE_XtReactor::XtWaitForMultipleEvents (int width, temp_set.rd_mask_, temp_set.wr_mask_, temp_set.ex_mask_, - (ACE_Time_Value *) &ACE_TimeValue::zero) == -1) + (ACE_Time_Value *) &ACE_Time_Value::zero) == -1) return -1; // Bad file arguments... // Instead of waiting using select, just use the Xt mechanism to wait diff --git a/ace/XtReactor.h b/ace/XtReactor.h index 8feb29cbb5f..25ff4159244 100644 --- a/ace/XtReactor.h +++ b/ace/XtReactor.h @@ -50,11 +50,11 @@ public: XtAppContext context (void); // Register timers/handles with Xt. - virtual int attach (ACE_HANDLE handle, - ACE_Event_Handler *handler, - ACE_Reactor_Mask mask); + virtual int register_handler_i (ACE_HANDLE handle, + ACE_Event_Handler *handler, + ACE_Reactor_Mask mask); - virtual int detach (ACE_HANDLE handle, ACE_Reactor_Mask mask); + virtual int remove_handler_i (ACE_HANDLE handle, ACE_Reactor_Mask mask); virtual int schedule_timer (ACE_Event_Handler *handler, const void *arg, diff --git a/ace/config-irix6.2-sgic++-nothreads.h b/ace/config-irix6.2-sgic++-nothreads.h new file mode 100644 index 00000000000..54fb9df342b --- /dev/null +++ b/ace/config-irix6.2-sgic++-nothreads.h @@ -0,0 +1,141 @@ +/* -*- C++ -*- */ +// $Id$ + +// The following configuration file is designed to work for the SGI +// Indigo2EX running IRIX 6.2 platform using the SGI C++ Compiler +// *without* using SGI Pthreads (e.g., if you are still using sprocs). + +#if !defined (ACE_CONFIG_H) +#define ACE_CONFIG_H + +// Include XtReactor into the library. +#define ACE_HAS_XT + +// Platform supports getpagesize() call. +#define ACE_HAS_GETPAGESIZE + +// Platform supports reentrant functions (i.e., all the POSIX *_r +// functions). +#define ACE_HAS_REENTRANT_FUNCTIONS + +// Platform does not support reentrant netdb functions (getprotobyname_r, +// getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, +// getservbyname_r). +#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS + +//Sockets may be called in multi-threaded programs +#define ACE_HAS_MT_SAFE_SOCKETS + +// Platform supports the tid_t type (e.g., AIX and Irix 6.2) +#define ACE_HAS_TID_T + +// uses ctime_r & asctime_r with only two parameters vs. three +#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R + +// Platform has no implementation of pthread_condattr_setpshared(), +// even though it supports pthreads! (like Irix 6.2) +#define ACE_LACKS_CONDATTR_PSHARED + +#define ACE_LACKS_RWLOCK_T + +// Platform/compiler has the sigwait(2) prototype +#define ACE_HAS_SIGWAIT + +// Platform supports System V IPC (most versions of UNIX, but not Win32) +#define ACE_HAS_SYSV_IPC + +// Platform requires void * for mmap(). +#define ACE_HAS_VOIDPTR_MMAP + +// Platform supports recvmsg and sendmsg. +#define ACE_HAS_MSG + +// Compiler/platform contains the <sys/syscall.h> file. +#define ACE_HAS_SYSCALL_H + +// Compiler/platform supports alloca() +#define ACE_HAS_ALLOCA + +// Compiler/platform has <alloca.h> +#define ACE_HAS_ALLOCA_H + +// Irix needs to define bzero() in this odd file <bstring.h> +#define ACE_HAS_BSTRING + +// Compiler/platform has the getrusage() system call. +#define ACE_HAS_GETRUSAGE + +// Denotes that Irix has second argument to gettimeofday() which is +// variable (...) +#define ACE_HAS_IRIX_GETTIMEOFDAY + +// Platform supports POSIX O_NONBLOCK semantics. +#define ACE_HAS_POSIX_NONBLOCK + +// Platform supports POSIX timers via timestruc_t. +#define ACE_HAS_POSIX_TIME +#define ACE_HAS_SVR4_TIME +#define ACE_NEEDS_SYSTIME_H + +// Compiler/platform has correctly prototyped header files. +#define ACE_HAS_CPLUSPLUS_HEADERS + +// Platform contains <poll.h>. +#define ACE_HAS_POLL + +// No multi-threading so use poll() call +// - for easier debugging, if nothing else +// #define ACE_USE_POLL + +// Platform supports the /proc file system. +#define ACE_HAS_PROC_FS + +// Explicit dynamic linking permits "lazy" symbol resolution. +#define ACE_HAS_RTLD_LAZY_V + +// Compiler/platform defines the sig_atomic_t typedef. +#define ACE_HAS_SIG_ATOMIC_T + +// Platform supports SVR4 extended signals. +#define ACE_HAS_SIGINFO_T +#define ACE_HAS_UCONTEXT_T + +// Compiler supports the ssize_t typedef. +#define ACE_HAS_SSIZE_T + +// Platform supports STREAMS. +#define ACE_HAS_STREAMS + +// Platform supports STREAM pipes (note that this is disabled by +// default, see the manual page on pipe(2) to find out how to enable +// it). +// #define ACE_HAS_STREAM_PIPES + +// Compiler/platform supports strerror (). +#define ACE_HAS_STRERROR + +// Compiler/platform supports struct strbuf. +#define ACE_HAS_STRBUF_T + +// Compiler/platform supports SVR4 dynamic linking semantics. +#define ACE_HAS_SVR4_DYNAMIC_LINKING + +// Prototypes for both signal() and struct sigaction are consistent. +#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES + +// Platform provides <sys/filio.h> header. +#define ACE_HAS_SYS_FILIO_H + +// Compiler/platform defines a union semun for SysV shared memory. +#define ACE_HAS_SEMUN + +// Platform supports IP multicast +#define ACE_HAS_IP_MULTICAST + +// Turns off the tracing feature. +#if !defined (ACE_NTRACE) +#define ACE_NTRACE 1 +#endif /* ACE_NTRACE */ + + +#endif /* ACE_CONFIG_H */ |