如何同时从多个线程访问MySQL

如何同时从多个线程访问MySQL,第1张

如何同时从多个线程访问MySQL

作为一个相当大的C应用程序的维护者,该应用程序可以从多个线程进行MySQL调用,我可以说在每个线程中简单地建立一个新连接都没有问题。我遇到的一些警告:

  • 编辑:似乎此项目符号仅适用于 <5.5版本;请参阅此页面以获取合适的版本:就像您说的已经在做的那样,针对链接
    libmysqlclient_r
  • 致电
    mysql_library_init()
    (一次,从
    main()
    )。阅读有关在多线程环境中使用的文档,以了解为什么有必要。
  • 在每个线程中
    MYSQL
    使用一个新结构
    mysql_init()
    。这具有呼唤
    mysql_thread_init()
    您的副作用。
    mysql_real_connect()
    像往常一样,在每个线程中以及其特定于线程的MYSQL结构。
  • 如果您要创建/销毁大量线程,则需要
    mysql_thread_end()
    在每个线程
    mysql_library_end()
    末尾(以及的末尾
    main()
    )使用。无论如何,这是个好习惯。

基本上,不要共享

MYSQL
结构或特定于该结构创建的任何内容(即
MYSQL_STMT
s),它会按预期工作。

与为我建立连接池相比,这似乎省去了很多工作。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5014685.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存