mysql连接超时

时间:2012-12-31 10:44:01

标签: c++ mysql

我需要设置mysql_real_connect的超时。问题是当服务器没有运行时超时很长,这会“冻结”我的应用程序。我尝试使用MYSQL_OPT_CONNECT_TIMEOUT但仍需要时间从mysql_real_connect返回。

示例代码:

MYSQL mysql;
unsigned int conn_timeout=1;

mysql_init(&mysql);
mysql_options(&mysql, MYSQL_OPT_CONNECT_TIMEOUT, &conn_timeout);

if(mysql_real_connect(&mysql, "localhost","root", "root", NULL, 3306, NULL,0) == FALSE)
{  
    cout<<"Connection Failed" ;       
    return 1;
}    
cout<<"Connection Success"; 

如果服务器没有运行,则从mysql_real_connect返回需要20秒。

有没有办法为mysql_real_connect设置超时,以便在指定的超时后返回? 请帮忙。

0 个答案:

没有答案