2012-03-28 2 views
2

, was ich wissen will, ist, dass ist mysql_query oder andere MySQL-Funktion in C api Thread-sicher mit den folgenden Bedingungen:Ist mysql_query threadsicher, wenn ich eine mysql-Verbindung pro Thread starte?

  1. die libmysqlclient.so verwenden, aber nicht den libmysqlclient_r.so
  2. in jedem Thread, rufen mysql_init und mysql_real_connect innerhalb des Schutzes eines globalen Mutex eine mySQL-Verbindung jeden Thread
  3. Aufruf mysql_query oder andere mySQL-Funktion ohne den Schutz des globalen Mutex zu erhalten mit jedem eigenen mySQL-Verbindung Thread

ist das thread-sicher?

Nun, ich denke es ist, und von dem, was ich getestet habe, scheint es Thread-sicher.

aber ich bin mir einfach nicht sicher. kann mir das jemand sagen?

vielen dank für ihre hilfe.

Antwort

0

Gewindesicherheit ist ein kompliziertes Problem. In einem meiner Python-Projekte verwende ich eine MySQL-Verbindung und schütze jeden einzelnen Anruf mit einer Sperre. Das funktioniert mit mehreren Threads.