summaryrefslogtreecommitdiff
path: root/ace
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-01-22 17:59:02 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-01-22 17:59:02 +0000
commit712bc5e84ea7b8ea5e9d496b72f3b077b24e2347 (patch)
tree668a47f197e15afe9b3976faa8b8391e5f63da83 /ace
parent0ed19f0f7e6f636280702e8ace013551c0cce5f4 (diff)
downloadATCD-712bc5e84ea7b8ea5e9d496b72f3b077b24e2347.tar.gz
foo
Diffstat (limited to 'ace')
-rw-r--r--ace/Future.h20
-rw-r--r--ace/Reactor.cpp1
-rw-r--r--ace/Thread_Manager.cpp2
-rw-r--r--ace/Thread_Manager.h5
4 files changed, 20 insertions, 8 deletions
diff --git a/ace/Future.h b/ace/Future.h
index 1d0a13e057d..a296a91c632 100644
--- a/ace/Future.h
+++ b/ace/Future.h
@@ -47,9 +47,14 @@ private:
int get (T &value, ACE_Time_Value *tv);
// Wait up to <tv> time to get the <value>.
- operator T();
- // Type conversion. will block forever until the
- // result is available.
+ operator T ();
+ // Type conversion. will block forever until the result is
+ // available. Note that this method is going away in a subsequent
+ // release since it doesn't distinguish between failure results and
+ // success results (exceptions should be used, but they aren't
+ // portable...). The <get> method should be used instead since it
+ // separates the error value from the result, and also permits
+ // timeouts.
void dump (void) const;
// Dump the state of an object.
@@ -123,8 +128,13 @@ public:
// Wait up to <tv> time to get the <value>.
operator T ();
- // type conversion. obtain the result of the asynchronous method
- // invocation. will block forever.
+ // Type conversion, which obtains the result of the asynchronous
+ // method invocation. Will block forever. Note that this method is
+ // going away in a subsequent release since it doesn't distinguish
+ // between failure results and success results (exceptions should be
+ // used, but they aren't portable...). The <get> method should be
+ // used instead since it separates the error value from the result,
+ // and also permits timeouts.
int ready (void);
// Check if the result is available.
diff --git a/ace/Reactor.cpp b/ace/Reactor.cpp
index e4ba0046a38..0a6c982c99d 100644
--- a/ace/Reactor.cpp
+++ b/ace/Reactor.cpp
@@ -1433,6 +1433,7 @@ ACE_Reactor::handle_events (ACE_Time_Value *max_wait_time)
#if defined (ACE_MT_SAFE)
ACE_GUARD_RETURN (ACE_REACTOR_MUTEX, ace_mon, this->token_, -1);
+
if (ACE_OS::thr_equal (ACE_Thread::self (), this->owner_) == 0)
return -1;
diff --git a/ace/Thread_Manager.cpp b/ace/Thread_Manager.cpp
index 71b0198cda2..39ceaa773e3 100644
--- a/ace/Thread_Manager.cpp
+++ b/ace/Thread_Manager.cpp
@@ -730,7 +730,7 @@ ACE_Thread_Manager::wait (const ACE_Time_Value *timeout)
if (this->zero_cond_.wait (timeout) == -1)
return -1;
#else
- timeout = timeout;
+ ACE_UNUSED_ARG (timeout);
#endif /* ACE_HAS_THREADS */
return 0;
diff --git a/ace/Thread_Manager.h b/ace/Thread_Manager.h
index 6202bbd4ccc..701115dbb9e 100644
--- a/ace/Thread_Manager.h
+++ b/ace/Thread_Manager.h
@@ -145,8 +145,9 @@ public:
int wait (const ACE_Time_Value *timeout = 0);
// Block until there are no more threads running in the
- // <Thread_Manager> or <timeout> expires. Returns 0 on success and
- // -1 on failure.
+ // <Thread_Manager> or <timeout> expires. Note that <timeout> is
+ // treated as "absolute" time. Returns 0 on success and -1 on
+ // failure.
// = Accessors for ACE_Thread_Descriptors.
int thread_descriptor (ACE_thread_t, ACE_Thread_Descriptor &);