summaryrefslogtreecommitdiff
path: root/ace/Cleanup_Strategies_T.h
diff options
context:
space:
mode:
authorkirthika <kirthika@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-03 23:35:58 +0000
committerkirthika <kirthika@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-03 23:35:58 +0000
commit4531c0210dd75bccba0fc1ffa6264e1e7c5ef831 (patch)
treeaec34216751cc59414aa66e2b7a42b6f181cf36d /ace/Cleanup_Strategies_T.h
parent5f8448bbe1989caf26f0e195c773d70b87577b8d (diff)
downloadATCD-4531c0210dd75bccba0fc1ffa6264e1e7c5ef831.tar.gz
Tue Aug 03 18:30:47 1999 Kirthika Parameswaran
<kirthika@cs.wustl.edu>
Diffstat (limited to 'ace/Cleanup_Strategies_T.h')
-rw-r--r--ace/Cleanup_Strategies_T.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/ace/Cleanup_Strategies_T.h b/ace/Cleanup_Strategies_T.h
index 15c615a9d09..25580b27f79 100644
--- a/ace/Cleanup_Strategies_T.h
+++ b/ace/Cleanup_Strategies_T.h
@@ -64,6 +64,27 @@ public:
//////////////////////////////////////////////////////////////////////
template <class KEY, class VALUE, class CONTAINER>
+class ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
+{
+ // = TITLE
+ // Defines a strategy to be followed for cleaning up
+ // entries which are svc_handlers from a container.
+ //
+ // = DESCRIPTION
+ // The entry to be cleaned up is removed from the container.
+ // Here, since we are dealing with recyclable svc_handlers with
+ // addresses which are refcountable specifically, we perform a
+ // couple of extra operations and do so without any locking.
+
+public:
+
+ virtual int cleanup (CONTAINER &container, KEY *key, VALUE *value);
+ // The method which will do the cleanup of the entry in the container.
+};
+
+//////////////////////////////////////////////////////////////////////
+
+template <class KEY, class VALUE, class CONTAINER>
class ACE_Handler_Cleanup_Strategy : public ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER>
{
// = TITLE