2013-08-18 53 views
-3

使用C++代碼將MySQL設置爲遊戲服務器的步驟是?遊戲服務器的C++ MySQL


  1. 什麼是多線程環境中,哪些是libmysqlclient_r.a和libmysqlclient.a之間的區別是什麼?
  2. 我的程序在問題情況下重新連接需要哪個選項?

的另一個問題是如何避免問題當遠程主機關閉?

+0

你所提供的代碼不足以讓我們給你一個關於你犯的錯誤的答案:可能是內存泄漏,算法都是2^n,佔用的資源比所需的多,窮人實施,......可能是各種各樣的問題。我不是一個經驗豐富的用戶,但我不認爲這個問題「現狀」適用於SO。 –

+0

已更新。請再回答。 –

回答

2
  1. ,你必須檢查,如果你在一個多線程環境不受使用mysql-library如果是這樣你應該鏈接到libmysqlclient_r.a但不libmysqlclient.a

  2. 如果你在多線程環境中,主要調用my_init一次,這基本上會阻止你崩潰。

  3. 保持MySQL的長連接,這意味着mysql_initmysql_connect只調用一次,你應該設置一些選項來告訴客戶機庫也重新如果必要的。

  4. 您可以抽象出您的設計,需要包含一些「結果行」的「結果集」對象,這可以幫助您爲將來的開發設計更通用的數據庫訪問層。

+0

Windows呢? libmysqlclient_r.a適用於Linux。 多線程環境是什麼意思? 如何告訴圖書館做必要的重新連接? –

+0

你可以設置一些選項來告訴mysql客戶端如果失去了與服務器的重新連接,你可以瞭解函數'mysql_options'來了解這些。 –