summaryrefslogtreecommitdiff
path: root/ACE/ace/Select_Reactor_Base.h
diff options
context:
space:
mode:
authorcleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-10-28 20:03:48 +0000
committercleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-10-28 20:03:48 +0000
commitf1949efed011ef43de0879bbf009e5e9df35f379 (patch)
tree29783ff2924a9fd4778e8a86dd01ddf4e1d95535 /ACE/ace/Select_Reactor_Base.h
parent85c978c5c0a04b92955931b1ebb8bed7683c054b (diff)
downloadATCD-f1949efed011ef43de0879bbf009e5e9df35f379.tar.gz
Wed Oct 28 19:49:39 UTC 2009 Chris Cleeland <cleeland@ociweb.com>
* ace/Select_Reactor_Base.h: * ace/Select_Reactor_Base.cpp: Changed the second recv() that is used in case of a short first read to be a recv_n(), blocking until the rest of the buffer can be received on the pipe. The problem was discovered during routine testing (Notify_Performance_Test) on VxWorks 6.7 on a P3 platform, but could occur on any platform. [Bugzilla 3754]
Diffstat (limited to 'ACE/ace/Select_Reactor_Base.h')
-rw-r--r--ACE/ace/Select_Reactor_Base.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/ACE/ace/Select_Reactor_Base.h b/ACE/ace/Select_Reactor_Base.h
index 20c1e536e6a..565dd2c4afb 100644
--- a/ACE/ace/Select_Reactor_Base.h
+++ b/ACE/ace/Select_Reactor_Base.h
@@ -180,6 +180,11 @@ public:
/// Read one of the notify call on the @a handle into the
/// @a buffer. This could be because of a thread trying to unblock
/// the Reactor_Impl
+ ///
+ /// Return value semantics for this are:
+ /// -1: nothing read, fatal, unrecoverable error
+ /// 0: nothing read at all
+ /// 1: complete buffer read
virtual int read_notify_pipe (ACE_HANDLE handle,
ACE_Notification_Buffer &buffer);