PHPCon Poland 2024

mysqli::$thread_id

mysqli_thread_id

(PHP 5, PHP 7, PHP 8)

mysqli::$thread_id -- mysqli_thread_idDeveulve el ID del hilo de la conexión actual

Descripción

Estilo orientado a objetos

Estilo por procedimientos

mysqli_thread_id(mysqli $link): int

La función mysqli_thread_id() devuelve el ID del hilo de la conexión actual, el cual puede ser destruido usando la función mysqli_kill(). Si se pierde la conexión y se reconecta con mysqli_ping(), el ID del hilo será otro. Por lo tanto se debería obtener el ID del hilo únicamente cuando se necesite.

Nota:

El ID del hilo es asignado basándose en una conexión-por-conexión. Por lo tanto, si la conexión se pierde y se restablece se asignará un nuevo ID de hio.

Para destruir una consulta en ejecución se puede usar el comando SQL KILL QUERY id_proceso.

Parámetros

link

Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()

Valores devueltos

Devuelve el ID del hilo de la conexión actual.

Ejemplos

Ejemplo #1 Ejemplo $mysqli->thread_id

Estilo orientado a objetos

<?php
$mysqli
= new mysqli("localhost", "mi_usuario", "mi_contraseña", "world");

/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}

/* determinar el id del hilo */
$id_hilo = $mysqli->thread_id;

/* Destruir la conexión */
$mysqli->kill($id_hilo);

/* Esto debería producir un error */
if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
printf("Error: %s\n", $mysqli->error);
exit;
}

/* cerrar la conexión */
$mysqli->close();
?>

Estilo por procedimientos

<?php
$enlace
= mysqli_connect("localhost", "mi_usuario", "mi_contraseña", "world");

/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}

/* determinar el id del hilo */
$id_hilo = mysqli_thread_id($enlace);

/* Destruir la conexión */
mysqli_kill($enlace, $id_hilo);

/* Esto debería producir un error */
if (!mysqli_query($enlace, "CREATE TABLE myCity LIKE City")) {
printf("Error: %s\n", mysqli_error($enlace));
exit;
}

/* cerrar la conexión */
mysqli_close($enlace);
?>

El resultado de los ejemplos sería:

Error: MySQL server has gone away

Ver también

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top