文字

mysqli::$thread_id

mysqli_thread_id

(PHP 5)

mysqli::$thread_id -- mysqli_thread_idReturns the thread ID for the current connection

说明

面向对象风格

int $mysqli->thread_id ;

过程化风格

int mysqli_thread_id ( mysqli $link )

The mysqli_thread_id() function returns the thread ID for the current connection which can then be killed using the mysqli_kill() function. If the connection is lost and you reconnect with mysqli_ping() , the thread ID will be other. Therefore you should get the thread ID only when you need it.

Note:

The thread ID is assigned on a connection-by-connection basis. Hence, if the connection is broken and then re-established a new thread ID will be assigned.

To kill a running query you can use the SQL command KILL QUERY processid.

参数

link

仅以过程化样式:由 mysqli_connect() mysqli_init() 返回的链接标识。

返回值

Returns the Thread ID for the current connection.

范例

Example #1 $mysqli->thread_id example

面向对象风格

<?php
$mysqli 
= new  mysqli ( "localhost" "my_user" "my_password" "world" );


if ( mysqli_connect_errno ()) {
    
printf ( "Connect failed: %s\n" mysqli_connect_error ());
    exit();
}


$thread_id  $mysqli -> thread_id ;


$mysqli -> kill ( $thread_id );


if (! $mysqli -> query ( "CREATE TABLE myCity LIKE City" )) {
    
printf ( "Error: %s\n" $mysqli -> error );
    exit;
}


$mysqli -> close ();
?>

过程化风格

<?php
$link 
mysqli_connect ( "localhost" "my_user" "my_password" "world" );


if ( mysqli_connect_errno ()) {
    
printf ( "Connect failed: %s\n" mysqli_connect_error ());
    exit();
}


$thread_id  mysqli_thread_id ( $link );


mysqli_kill ( $link $thread_id );


if (! mysqli_query ( $link "CREATE TABLE myCity LIKE City" )) {
    
printf ( "Error: %s\n" mysqli_error ( $link ));
    exit;
}


mysqli_close ( $link );
?>

以上例程会输出:

Error: MySQL server has gone away

参见

  • mysqli_kill() - Asks the server to kill a MySQL thread
上一篇: 下一篇: