acl  3.5.3.0
acl::mysql_pool类 参考

#include <mysql_pool.hpp>

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

Public 成员函数

 mysql_pool (const char *dbaddr, const char *dbname, const char *dbuser, const char *dbpass, int dblimit=64, unsigned long dbflags=0, bool auto_commit=true, int conn_timeout=60, int rw_timeout=60, const char *charset="utf8")
 
 mysql_pool (const mysql_conf &conf)
 
 ~mysql_pool ()
 
- Public 成员函数 继承自 acl::db_pool
 db_pool (const char *dbaddr, size_t count, size_t idx=0)
 
virtual ~db_pool ()
 
db_handlepeek_open ()
 
size_t get_dblimit () const
 
size_t get_dbcount () const
 
void set_idle (int ttl)
 
- Public 成员函数 继承自 acl::connect_pool
 connect_pool (const char *addr, size_t max, size_t idx=0)
 
virtual ~connect_pool ()
 
connect_poolset_timeout (int conn_timeout, int rw_timeout)
 
connect_poolset_retry_inter (int retry_inter)
 
connect_poolset_idle_ttl (time_t ttl)
 
connect_poolset_check_inter (int n)
 
connect_clientpeek (bool on=true)
 
void bind_one (connect_client *conn)
 
void put (connect_client *conn, bool keep=true)
 
int check_idle (time_t ttl, bool exclusive=true)
 
void set_alive (bool ok)
 
bool aliving ()
 
const char * get_addr () const
 
size_t get_max () const
 
size_t get_count () const
 
size_t get_idx () const
 
void reset_statistics (int inter)
 
unsigned long long get_total_used () const
 
unsigned long long get_current_used () const
 
void set_key (const char *key)
 
const char * get_key (void) const
 

Protected 成员函数

connect_clientcreate_connect ()
 
- Protected 成员函数 继承自 acl::connect_pool
void set_delay_destroy ()
 
- Protected 成员函数 继承自 acl::acl::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

额外继承的成员函数

- Protected 属性 继承自 acl::connect_pool
bool alive_
 
bool delay_destroy_
 
int retry_inter_
 
time_t last_dead_
 
char key_ [256]
 
char addr_ [256]
 
int conn_timeout_
 
int rw_timeout_
 
size_t idx_
 
size_t max_
 
size_t count_
 
time_t idle_ttl_
 
time_t last_check_
 
int check_inter_
 
locker lock_
 
unsigned long long total_used_
 
unsigned long long current_used_
 
time_t last_
 
std::list< connect_client * > pool_
 

详细描述

在文件 mysql_pool.hpp12 行定义.

构造及析构函数说明

◆ mysql_pool() [1/2]

acl::mysql_pool::mysql_pool ( const char *  dbaddr,
const char *  dbname,
const char *  dbuser,
const char *  dbpass,
int  dblimit = 64,
unsigned long  dbflags = 0,
bool  auto_commit = true,
int  conn_timeout = 60,
int  rw_timeout = 60,
const char *  charset = "utf8" 
)

采用 mysql 数据库时的构造函数

参数
dbaddr{const char*} mysql 服务器地址,格式:IP:PORT, 在 UNIX 平台下可以为 UNIX 域套接口
dbname{const char*} 数据库名
dbuser{const char*} 数据库用户
dbpass{const char*} 数据库用户密码
dblimit{int} 数据库连接池的最大连接数限制
dbflags{unsigned long} mysql 标记位
auto_commit{bool} 是否自动提交
conn_timeout{int} 连接数据库超时时间(秒)
rw_timeout{int} 与数据库通信时的IO时间(秒)
charset{const char*} 连接数据库的字符集(utf8, gbk, ...)

◆ mysql_pool() [2/2]

acl::mysql_pool::mysql_pool ( const mysql_conf conf)

构造函数

参数
conf{const mysql_conf&} mysql 数据库连接配置对象

◆ ~mysql_pool()

acl::mysql_pool::~mysql_pool ( )

成员函数说明

◆ create_connect()

connect_client* acl::mysql_pool::create_connect ( )
protectedvirtual

实现了 acl::connect_pool.


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