Sé que hay muchas preguntas similares aquí, también hay muchos resultados cuando lo googleo, pero ninguno de ellos responde mi pregunta. Leo this, this, this y this, pero ninguno de ellos funciona para mí. No hablo de bloqueos, no quiero hacer esto usando el conector C++ de MySQL, solo la API C.Cómo establecer un tiempo de espera para la consulta de MySQL con C API
Además, lo que es muy importante aquí: lo hago en LINUX. ¿Por qué menciono esto? Debido a que en la documentación de mysql_options:
MYSQL_OPT_READ_TIMEOUT - ...This option works only for TCP/IP connections and, prior to MySQL 5.0.25, only for Windows. MYSQL_OPT_WRITE_TIMEOUT- ... This option works only for TCP/IP connections and, prior to MySQL 5.0.25, only for Windows
Así que, ¿hay alguna manera de establecer un tiempo de espera de consulta para las versiones, antes 5.0.25?
Mi versión de MySQL:
[[email protected] kiril]# mysql --version mysql Ver 14.12 Distrib 5.0.22, for redhat-linux-gnu (i686) using readline 5.0
EDIT: Al menos, ¿hay alguna forma de cancelar una consulta? Puedo iniciar un temporizador como un hilo diferente, pero cuando expire ... ¿puedo cancelar la consulta de alguna manera?
¿Qué versión de MySQL está utilizando? – SubniC
@Kiril Kirov - Puede usar el comando kill en mysql para matar una consulta en ejecución - http://dev.mysql.com/doc/refman/5.0/en/kill.html – ajreal
@ajreal - ¡Gracias! Voy a intentarlo –