MySQL :: MySQL 8.4 C API Developer Guide :: 5.4.41 mysql_init() (original) (raw)
5.4.41 mysql_init()
MYSQL *
mysql_init(MYSQL *mysql)
Description
Allocates or initializes a MYSQL
object suitable formysql_real_connect(). Ifmysql
is a NULL
pointer, the function allocates, initializes, and returns a new object. Otherwise, the object is initialized and the address of the object is returned. Ifmysql_init() allocates a new object, it is freed whenmysql_close() is called to close the connection.
In a nonmultithreaded environment,mysql_init() invokesmysql_library_init() automatically as necessary. However,mysql_library_init() is not thread-safe in a multithreaded environment, and thus neither is mysql_init(). Before calling mysql_init(), either call mysql_library_init() prior to spawning any threads, or use a mutex to protect themysql_library_init() call. This should be done prior to any other client library call.
Return Values
An initialized MYSQL*
handler.NULL
if there was insufficient memory to allocate a new object.
Errors
In case of insufficient memory, NULL
is returned.