|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
数据库连接池类 更多...
#include <database_pool.hpp>
类 | |
| struct | pool_config |
| 连接池配置 更多... | |
Public 成员函数 | |
| database_pool (db_type type, const db_config &config) | |
| 构造函数 | |
| database_pool (db_type type, const db_config &config, const pool_config &pool_config) | |
| 构造函数 | |
| ~database_pool () | |
| 析构函数 | |
| shared_ptr< idb_connect > | get_connect () |
| 获取通用数据库连接 | |
| shared_ptr< idb_tb_connect > | get_tb_connect () |
| 获取关系型数据库连接 | |
| shared_ptr< idb_kv_connect > | get_kv_connect () |
| 获取键值存储连接 | |
| size_t | idle_count () const noexcept |
| 获取空闲连接数 | |
| size_t | total_count () const noexcept |
| 获取总连接数 | |
| bool | is_running () const noexcept |
| 检查连接池是否正在运行 | |
| void | stop () |
| 停止连接池 | |
数据库连接池类
管理数据库连接的生命周期,提供连接的获取和归还功能。 内部维护一个空闲连接队列,支持多线程安全访问。
主要特性:
在文件 database_pool.hpp 第 42 行定义.
构造函数
| type | 数据库类型 |
| config | 数据库连接配置 |
在文件 database_pool.hpp 第 102 行定义.
引用了 database_pool().
被这些函数引用 database_pool() , 以及 ~database_pool().
| database_pool::database_pool | ( | db_type | type, |
| const db_config & | config, | ||
| const pool_config & | pool_config ) |
| database_pool::~database_pool | ( | ) |
| shared_ptr< idb_connect > database_pool::get_connect | ( | ) |
获取通用数据库连接
返回基类idb_connect指针,适用于不需要特定类型操作的场景。
| shared_ptr< idb_kv_connect > database_pool::get_kv_connect | ( | ) |
获取键值存储连接
返回idb_kv_connect指针,支持键值操作。
| shared_ptr< idb_tb_connect > database_pool::get_tb_connect | ( | ) |
获取关系型数据库连接
返回idb_tb_connect指针,支持SQL查询操作。
|
noexcept |
获取空闲连接数
|
inlinenoexcept |
检查连接池是否正在运行
在文件 database_pool.hpp 第 166 行定义.
引用了 is_running() , 以及 memory_order_acquire.
被这些函数引用 is_running().
| void database_pool::stop | ( | ) |
停止连接池
停止所有后台线程,等待当前使用中的连接归还后释放资源。
|
noexcept |