acl  3.5.3.0
acl::pgsql_manager类 参考

#include <pgsql_manager.hpp>

+ 类 acl::pgsql_manager 继承关系图:
+ acl::pgsql_manager 的协作图:

Public 成员函数

 pgsql_manager (time_t idle_ttl=120)
 
 ~pgsql_manager ()
 
pgsql_manageradd (const pgsql_conf &conf)
 
- Public 成员函数 继承自 acl::connect_manager
 connect_manager (void)
 
virtual ~connect_manager (void)
 
void bind_thread (bool yes)
 
void init (const char *default_addr, const char *addr_list, size_t count, int conn_timeout=30, int rw_timeout=30)
 
void set (const char *addr, size_t count, int conn_timeout=30, int rw_timeout=30)
 
const conn_configget_config (const char *addr, bool use_first=false)
 
void set_retry_inter (int n)
 
void set_idle_ttl (time_t ttl)
 
void set_check_inter (int n)
 
void remove (const char *addr)
 
connect_poolget (const char *addr, bool exclusive=true, bool restore=false)
 
virtual connect_poolpeek (void)
 
virtual connect_poolpeek (const char *key, bool exclusive=true)
 
void lock (void)
 
void unlock (void)
 
std::vector< connect_pool * > & get_pools (void)
 
size_t check_idle (size_t step, size_t *left=NULL)
 
size_t size (void) const
 
connect_poolget_default_pool (void)
 
void statistics (void)
 
bool start_monitor (connect_monitor *monitor)
 
connect_monitorstop_monitor (bool graceful=true)
 
void set_pools_status (const char *addr, bool alive)
 

Protected 成员函数

connect_poolcreate_pool (const char *addr, size_t count, size_t idx)
 
- Protected 成员函数 继承自 acl::connect_manager
void set_service_list (const char *addr_list, int count, int conn_timeout, int rw_timeout)
 
conns_poolsget_pools_by_id (unsigned long id)
 
connect_poolcreate_pool (const conn_config &cf, size_t idx)
 
void create_pools_for (pools_t &pools)
 
void remove (pools_t &pools, const char *addr)
 
void set_status (pools_t &pools, const char *addr, bool alive)
 
unsigned long get_id (void) const
 
void get_key (const char *addr, string &key)
 
void get_addr (const char *key, string &addr)
 
connect_pooladd_pool (const char *addr)
 
- Protected 成员函数 继承自 acl::acl::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

额外继承的成员函数

- Protected 类型 继承自 acl::connect_manager
typedef std::vector< connect_pool * > pools_t
 
typedef pools_t::iterator pools_it
 
typedef pools_t::const_iterator pools_cit
 
typedef std::map< unsigned long, conns_pools * > manager_t
 
typedef manager_t::iterator manager_it
 
typedef manager_t::const_iterator manager_cit
 
- 静态 Protected 成员函数 继承自 acl::connect_manager
static void thread_oninit (void)
 
static void thread_onexit (void *ctx)
 
- Protected 属性 继承自 acl::connect_manager
bool thread_binding_
 
string default_addr_
 
connect_pooldefault_pool_
 
std::map< string, conn_configaddrs_
 
manager_t manager_
 
locker lock_
 
int stat_inter_
 
int retry_inter_
 
time_t idle_ttl_
 
int check_inter_
 
connect_monitormonitor_
 

详细描述

在文件 pgsql_manager.hpp13 行定义.

构造及析构函数说明

◆ pgsql_manager()

acl::pgsql_manager::pgsql_manager ( time_t  idle_ttl = 120)

◆ ~pgsql_manager()

acl::pgsql_manager::~pgsql_manager ( )

成员函数说明

◆ add()

pgsql_manager& acl::pgsql_manager::add ( const pgsql_conf conf)

添加一个数据库实例方法二

参数
conf{const pgsql_conf&}
返回
{pgsql_manager&}

◆ create_pool()

connect_pool* acl::pgsql_manager::create_pool ( const char *  addr,
size_t  count,
size_t  idx 
)
protectedvirtual

基类 connect_manager 虚函数的实现

参数
addr{const char*} 服务器监听地址,格式:ip:port
count{size_t} 连接池的大小限制,该值为 0 时则没有限制
idx{size_t} 该连接池对象在集合中的下标位置(从 0 开始)
返回
{connect_pool*} 返回创建的连接池对象

实现了 acl::connect_manager.


该类的文档由以下文件生成: