问题现象:
使用libmysqlclient编写一个客户端,参考相关说明在mysql_init之前和mysql_real_connect之后做了如下设置:
bool reconnect = 0;
     mysql_options(db_handle, MYSQL_OPT_RECONNECT, &reconnect); 
unsigned int uTimeOut = 1;
mysql_options(db_handle, MYSQL_OPT_CONNECT_TIMEOUT, &uTimeOut); 
mysql_options(db_handle, MYSQL_OPT_READ_TIMEOUT, &uTimeOut); 
mysql_options(db_handle, MYSQL_OPT_WRITE_TIMEOUT, &uTimeOut); 执行mysql_query时,断开网络,出现阻塞,程序会一直卡在这儿。
使用netstat -an | grep 3306 在数据库所在的机器上发现TCP链接已经中断,但在客户端所在的机器TCP连接还在ESTABLISHED中。经测试大概 15分钟后才会感知TCP连接中断。请教各位大神其中的原因!