文档首页
MySQL 9.0 C API 开发者指南
下载本手册
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


5.4.41 mysql_init()

MYSQL *
mysql_init(MYSQL *mysql)

描述

分配或初始化一个适合于 mysql_real_connect()MYSQL 对象。如果 mysql 是一个 NULL 指针,则该函数分配、初始化并返回一个新对象。否则,该对象被初始化,并返回该对象的地址。如果 mysql_init() 分配了一个新对象,则在调用 mysql_close() 关闭连接时,该对象将被释放。

在非多线程环境中,mysql_init() 会根据需要自动调用 mysql_library_init()。但是,在多线程环境中,mysql_library_init() 不是线程安全的,因此 mysql_init() 也不安全。在调用 mysql_init() 之前,请在生成任何线程之前调用 mysql_library_init(),或使用互斥锁来保护 mysql_library_init() 调用。这应该在任何其他客户端库调用之前完成。

返回值

一个已初始化的 MYSQL* 处理程序。如果内存不足以分配一个新对象,则返回 NULL

错误

如果内存不足,则返回 NULL