Page Speed Optimization Libraries
1.3.25.1
|
00001 // Copyright 2011 Google Inc. 00016 00017 #ifndef NET_INSTAWEB_UTIL_PUBLIC_NULL_SHARED_MEM_H_ 00018 #define NET_INSTAWEB_UTIL_PUBLIC_NULL_SHARED_MEM_H_ 00019 00020 #include <cstddef> 00021 #include "net/instaweb/util/public/abstract_shared_mem.h" 00022 #include "net/instaweb/util/public/basictypes.h" 00023 #include "net/instaweb/util/public/string.h" 00024 00025 namespace net_instaweb { 00026 00027 class MessageHandler; 00028 00031 class NullSharedMem : public AbstractSharedMem { 00032 public: 00033 NullSharedMem(); 00034 virtual ~NullSharedMem(); 00035 00036 virtual size_t SharedMutexSize() const; 00037 00038 virtual AbstractSharedMemSegment* CreateSegment( 00039 const GoogleString& name, size_t size, MessageHandler* handler); 00040 00043 virtual AbstractSharedMemSegment* AttachToSegment( 00044 const GoogleString& name, size_t size, MessageHandler* handler); 00045 00046 virtual void DestroySegment(const GoogleString& name, 00047 MessageHandler* handler); 00048 00049 private: 00050 DISALLOW_COPY_AND_ASSIGN(NullSharedMem); 00051 }; 00052 00053 } 00054 00055 #endif ///< NET_INSTAWEB_UTIL_PUBLIC_NULL_SHARED_MEM_H_