acl
3.5.3.0
|
#include <db_service.hpp>
Public 成员函数 | |
db_service (size_t dblimit=100, int nthread=2, bool win32_gui=false) | |
virtual | ~db_service (void) |
void | sql_select (const char *sql, db_query *query) |
void | sql_update (const char *sql, db_query *query) |
void | push_back (db_handle *db) |
Public 成员函数 继承自 acl::ipc_service | |
ipc_service (int nthread, bool ipc_keep=true) | |
virtual | ~ipc_service () |
ipc_client * | peek_conn () |
void | push_conn (ipc_client *conn) |
Public 成员函数 继承自 acl::ipc_server | |
ipc_server () | |
virtual | ~ipc_server () |
bool | open (aio_handle *handle, const char *addr="127.0.0.1:0") |
const char * | get_addr () const |
aio_listen_stream * | get_stream () const |
aio_handle & | get_handle () const |
Protected 成员函数 | |
virtual db_handle * | db_create ()=0 |
virtual void | on_accept (aio_socket_stream *client) |
Protected 成员函数 继承自 acl::ipc_service | |
void | request (ipc_request *req) |
Protected 成员函数 继承自 acl::ipc_server | |
virtual void | on_open (const char *addr) |
virtual void | on_close () |
额外继承的成员函数 | |
Protected 属性 继承自 acl::ipc_service | |
long long int | magic_ |
数据库服务类,该类是一个异步数据库操作管理类,该类对象所在的线程必须是 一个非阻塞的线程过程
在文件 db_service.hpp 第 51 行定义.
acl::db_service::db_service | ( | size_t | dblimit = 100 , |
int | nthread = 2 , |
||
bool | win32_gui = false |
||
) |
当为 sqlite 数据库时的构造函数
dblimit | {size_t} 数据库连接池的个数限制 |
nthread | {int} 子线程池的最大线程数 |
win32_gui | {bool} 是否是窗口类的消息,如果是,则内部的 通讯模式自动设置为基于 _WIN32 的消息,否则依然采用通用的套接 口通讯方式 |
|
virtual |
|
protectedpure virtual |
需要子类实现此函数用来创建数据库对象
|
protectedvirtual |
void acl::db_service::push_back | ( | db_handle * | db | ) |
向数据库连接池中添加连接对象
db | {db_handle*} 数据库连接对象 |
void acl::db_service::sql_select | ( | const char * | sql, |
db_query * | query | ||
) |
异步执行 SQL 查询语句
sql | {const char*} 要执行的标准 SQL 语句 |
query | {db_query*} 用来接收执行结果的类对象 |
void acl::db_service::sql_update | ( | const char * | sql, |
db_query * | query | ||
) |
异步执行 SQL 更新语句
sql | {const char*} 要执行的标准 SQL 语句 |
query | {db_query*} 用来接收执行结果的类对象 |