summaryrefslogtreecommitdiff
path: root/ACE/ace/Handle_Gobbler.inl
diff options
context:
space:
mode:
authorSteve Huston <shuston@riverace.com>2007-03-22 18:35:16 +0000
committerSteve Huston <shuston@riverace.com>2007-03-22 18:35:16 +0000
commita7e69aa2ab45c91434af5b7b6e3543bf171b84aa (patch)
treefcdd5637bd176c0340548e3c86b21c8c8317d37a /ACE/ace/Handle_Gobbler.inl
parent059d6e598c37bedf915c03731a04e375d2fe2758 (diff)
downloadATCD-a7e69aa2ab45c91434af5b7b6e3543bf171b84aa.tar.gz
ChangeLogTag:Thu Mar 22 18:33:19 UTC 2007 Steve Huston <shuston@riverace.com>
Diffstat (limited to 'ACE/ace/Handle_Gobbler.inl')
-rw-r--r--ACE/ace/Handle_Gobbler.inl22
1 files changed, 20 insertions, 2 deletions
diff --git a/ACE/ace/Handle_Gobbler.inl b/ACE/ace/Handle_Gobbler.inl
index 6b51908e45e..71712082781 100644
--- a/ACE/ace/Handle_Gobbler.inl
+++ b/ACE/ace/Handle_Gobbler.inl
@@ -14,6 +14,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
inline void
ACE_Handle_Gobbler::close_remaining_handles (void)
{
+#if 0
HANDLE_SET::iterator iterator =
this->handle_set_.begin ();
@@ -26,6 +27,11 @@ ACE_Handle_Gobbler::close_remaining_handles (void)
{
ACE_OS::close (*iterator);
}
+#else
+ ACE_Handle_Set_Iterator iter (this->handle_set_);
+ for (ACE_HANDLE h = iter (); h != ACE_INVALID_HANDLE; h = iter ())
+ ACE_OS::close (h);
+#endif
}
inline
@@ -37,6 +43,7 @@ ACE_Handle_Gobbler::~ACE_Handle_Gobbler (void)
inline int
ACE_Handle_Gobbler::free_handles (size_t n_handles)
{
+#if 0
HANDLE_SET::iterator iterator =
this->handle_set_.begin ();
@@ -51,7 +58,13 @@ ACE_Handle_Gobbler::free_handles (size_t n_handles)
if (result != 0)
return result;
}
-
+#else
+ ACE_Handle_Set_Iterator iter (this->handle_set_);
+ for (ACE_HANDLE h = iter ();
+ h != ACE_INVALID_HANDLE && n_handles > 0;
+ --n_handles, h = iter ())
+ ACE_OS::close (h);
+#endif
return 0;
}
@@ -83,10 +96,15 @@ ACE_Handle_Gobbler::consume_handles (size_t n_handles_to_keep_available)
break;
}
}
-
+#if 0
result = this->handle_set_.insert (handle);
if (result == -1)
break;
+#else
+ if (handle >= FD_SETSIZE)
+ break;
+ this->handle_set_.set_bit (handle);
+#endif
}
#endif /* ACE_WIN32 */