X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FSocketPolicy.hh;h=8dba18b1c02f00daaa2c1c7dcd10b2e2a282f5d4;hb=aec1302f91b51edb58f8a97985ab2e0aa9c8db66;hp=eb453aff28e7a4ae32fdebed4b8468ab7a66e77a;hpb=ac88c68bb3aebad5f7d91ce44f1c845d973f9613;p=senf.git diff --git a/Socket/SocketPolicy.hh b/Socket/SocketPolicy.hh index eb453af..8dba18b 100644 --- a/Socket/SocketPolicy.hh +++ b/Socket/SocketPolicy.hh @@ -24,12 +24,20 @@ \brief Policy Framework public header \todo We should probably remove BufferingPolicy from the - interface, it does not make much sense (how did I come to include - it ??) + interface, it does not make much sense (how did I come to + include it ??) \todo Do we want to support separate read and write policies. This - allows to treat pipes within this framework however, is this worth - the effort? + allows to treat pipes within this framework however, is this + worth the effort? + + \idea Creating a new Socket will create 4 (!) new instances (The + handle, the body, the policy and the protocol) of which 3 + (argh) (body, policy and protocol) live on the heap. This is + expensive. We should convert all the policy classes to + singletons and assign the same instance to all socket bodies + with the same policy. This would reduce the number of heap + allocations per socket handle to two. */ /** \defgroup policy_group The Policy Framework @@ -206,8 +214,7 @@ senf::ConnectedCommunicationPolicyIs is based on the \c boost::enable_if template). - \see \ref policy_framework \n - \ref extend_policy \n + \see \ref extend_policy \n The Boost enable_if utility \n The Boost.MPL library \n The Boost.Preprocessor library