sql >> Databáze >  >> RDS >> Mysql

Použití libmysqlclient ve vícevláknové aplikaci

Aktualizovat :

Zdá se, že musíte zavolat mysql_library_init() před mysql_init() :

Pokud jde o vaši původní otázku, libmysqlclient_r.so je ve skutečnosti symbolický odkaz na libmysql.so . Můžete změnit libmysql/CMakeLists.txt k vytvoření statické knihovny (libmysql.a ) místo toho odstraněním SHARED klíčové slovo z následujícího řádku:

ADD_LIBRARY(libmysql          SHARED ${CLIENT_SOURCES} libmysql.def)

Doporučil bych však (1) pokusit se spustit stejný kód bez použití vláken a zjistit, zda problém přetrvává, (2) vytvořit a použít ladicí verzi knihoven:

cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug
make

Tímto způsobem můžete problém prozkoumat podrobněji.




  1. 8 způsobů, jak přidat minuty k datu a času v MariaDB

  2. Zkopírujte hodnoty z jednoho sloupce do druhého ve stejné tabulce

  3. Jak používat datový typ Postgres JSONB s JPA?

  4. Rozdělení Datetime na hodnotu data a času