27.7.6.37 mysql_init()
MYSQL *mysql_init(MYSQL *mysql)
Allocates or initializes a MYSQL
object suitable for mysql_real_connect()
. If mysql
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. If mysql_init()
allocates a new object, it is freed when mysql_close()
is called to close the connection.
In a nonmultithreaded environment, mysql_init()
invokes mysql_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 the mysql_library_init()
call. This should be done prior to any other client library call.
An initialized MYSQL*
handler. NULL
if there was insufficient memory to allocate a new object.