| 280 | } |
| 281 | |
| 282 | void db_service::sql_update(const char* sql, db_query* query) |
| 283 | { |
| 284 | assert(sql && *sql); |
| 285 | |
| 286 | db_handle* db; |
| 287 | |
| 288 | std::list<db_handle*>::iterator it = dbpool_.begin(); |
| 289 | if (it == dbpool_.end()) { |
| 290 | db = db_create(); |
| 291 | } else { |
| 292 | db = *it; |
| 293 | dbpool_.erase(it); |
| 294 | } |
| 295 | |
| 296 | // �������̵߳�������� |
| 297 | db_ipc_request* ipc_req = NEW db_ipc_request(db, sql, query, false); |
| 298 | |
| 299 | // ���û��� ipc_service ������� |
| 300 | request(ipc_req); |
| 301 | } |
| 302 | |
| 303 | void db_service::push_back(db_handle* db) |
| 304 | { |