2012-03-28 30 views
2

什麼,我想知道的是,在C API線程安全符合下列條件的mysql_query或其他MySQL功能:如果我爲每個線程啓動一個mysql連接,mysql_query是線程安全的嗎?

  1. 使用libmysqlclient.so但不是libmysqlclient_r.so
  2. 在每一個線程,調用內保護的全球互斥的mysql_init和mysql_real_connect得到一個MySQL連接每個線程
  3. 通話的mysql_query或其他MySQL功能,而不保護利用每個線程自己的MySQL連接全球互斥的

這是線程安全的嗎?

嗯,我認爲這是,而且從我測試過的看來,它似乎是線程安全的。

但我只是不確定。誰能告訴我?

非常感謝您的幫助。

回答

0

線程安全是一個複雜的問題。在我的一個(Python)項目中,我使用了一個MySQL連接,並用鎖來保護每一個呼叫。這適用於多個線程。

相關問題