В чем разница между libmysqlclient.a и libmysqlclient_r.a?
Вопрос
Что мне следует использовать для ссылки для библиотеки MySQLClient? В чем разница между ними? Кажется, я не могу найти ответ. Спасибо.
Решение
libmysqlclient_r.a-это потоковое
Другие советы
Новые версии дистрибутива клиентов MySQL не включают версию «_R». Некоторые могут иметь символическую ссылку от libmyqslclient_r.a to libmyqslclient.a
libmysqlclient_r.a-это «повторное введение». https://en.wikipedia.org/wiki/reentrant_%28Subroutine%29 Но, как отметил Гаррет, нет никакой разницы в новых версиях (оба повторно въезжают).
libmysqlclient_r гарантированно будет защищен потоком на соединение. Тем не менее, документы MySQL до MySQL 5.5 неразрешимы о том, могут ли многопоточные приложения связываться с LibmysqlClient, если не существует одновременного доступа на одном рукояте соединения MySQL.
Однако база на опыте я использовал libmysqlclient для приложений, которые обрабатывают 100-400 запросов в секунду и работают в течение 5 лет. Я еще не сталкивался с какими -либо проблемами.