30#include <unordered_map>
43 std::string service_implementation);
46 std::string service_implementation);
74 m_version.fetch_add(1, std::memory_order_relaxed);
93typedef std::unordered_multimap<
95 std::equal_to<std::string>,
Component_malloc_allocator is a C++ STL memory allocator based on my_malloc/my_free.
Definition: component_malloc_allocator.h:63
Definition: cache_allocator.h:31
static channel_imp * create(service_names_set<> &service_names)
Definition: channel.cc:63
static bool factory_deinit()
Definition: channel.cc:137
std::atomic< bool > m_has_ignore_list
Definition: channel.h:86
channel_imp()
Definition: channel.cc:52
channel_imp * ref()
Definition: channel.h:59
static bool destroy(channel_imp *channel)
Definition: channel.cc:84
static bool ignore_list_add(channel_imp *channel, std::string service_implementation)
Definition: channel.cc:204
void ignore_list_copy(service_names_set< std::string, std::less< std::string > > &dest_set)
Definition: channel.cc:182
mysql_rwlock_t m_lock
Definition: channel.h:90
static bool ignore_list_remove(channel_imp *channel, std::string service_implementation)
Definition: channel.cc:226
~channel_imp()
Definition: channel.cc:61
service_names_set & get_service_names()
Definition: channel.cc:189
channel_imp & operator=(const channel_imp &)=delete
service_names_set< std::string, std::less< std::string > > m_ignore_list
Definition: channel.h:85
void increment_version_no_lock()
Definition: channel.h:73
static bool factory_init()
Definition: channel.cc:119
std::atomic< unsigned int > m_version
Definition: channel.h:88
void initialize_service_counts()
Definition: channel.cc:154
channel_imp(const channel_imp &)=delete
int unref()
Definition: channel.h:63
service_names_set m_service_names
Definition: channel.h:84
bool is_alone()
Definition: channel.h:58
static void increment_version(channel_imp *channel)
Definition: channel.cc:113
static bool service_notification(const char **services, unsigned int count, bool unload)
Take actions to reference caching caches to refresh their cached service references.
Definition: channel.cc:265
bool ignore_list_clear()
Definition: channel.cc:235
std::atomic< int > m_reference_count
Definition: channel.h:87
unsigned int version()
Definition: channel.h:51
Definition: reference_cache_common.h:60
static int count
Definition: myisam_ftdump.cc:45
channel_by_name_hash_t * channel_by_name_hash
Definition: channel.cc:49
std::unordered_multimap< std::string, channel_imp *, std::hash< std::string >, std::equal_to< std::string >, Component_malloc_allocator< std::pair< const std::string, channel_imp * > > > channel_by_name_hash_t
Definition: channel.h:97
mysql_rwlock_t LOCK_channels
Definition: channel.cc:50
Definition: services.cc:40
An instrumented rwlock structure.
Definition: mysql_rwlock_bits.h:51