3

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のタイムアウトを設定する方法はありますか?助けてください。

4

0 に答える 0