Запомните это:
Потребители едят ужин (супер); Производитель продлевает фабрику своего родителя
blockquote>
http://forums.mysql.com/read.php?45,183339,183339 обладает
Обновленная ссылка на исходную статью, показывающую, как сделать асинхронные запросы mysql:
http://jan.kneschke.de/projects/mysql/async-mysql-queries-with-c-api/
У меня была подобная проблема с совсем другие технологии: Скрученный Python (основанный на реакторе IO) и sqlAlchemy (??). При поиске решения я нашел о sAsync проекте, который просто создал отдельный поток для sqlAlchemy и затем ответил на запросы.
, Учитывая, что ASIO основан на низкоуровневых функциях OS (таких как aio_read () или ReadFileEx () и т.д.) и реактор уровня ОС (или проагент, в случае Windows) я не думаю, что у Вас есть другой шанс, чем эмуляция 'асинхронности' подобными средствами.
Выполнение синхронного коннектора в потоках не является опцией
, Думают об этом: libmysqlclient / mysqlclient.dll
Вы используете, выполняет синхронные вызовы сокета. Планировщик ОС правильно переключится на другой поток, пока ввод-вывод не будет закончен, поэтому каково различие? (кроме того, что Вы не должны делать потоки 2k для этого..)
Редактирование: mysql_real_connect () поддерживает параметр сокета UNIX. Можно, предположительно, считать себя из mysql порта сервера и записать во что сокет UNIX только с помощью ASIO. Как proxyfication.
[ Выполнение синхронного коннектора в потоках не является опцией Think об этом: libmysqlclient / mysqlclient.dll, который Вы используете, выполняет синхронные вызовы сокета. Планировщик ОС правильно переключится на другой поток, пока ввод-вывод не будет закончен ]
, Это прослушивает меня! - 'другой поток' мог как легко быть второй синхронизацией. соединение с mysql, и должно быть обработано mysql так же, как это было бы другой клиент в целом? Мой gutfeel - то, что это должно работать с помощью нескольких потоков.
MySQL Connector/C ++ является реализацией C++ JDBC 4.0
ссылочные клиенты, которые используют MySQL Connector/C ++: - OpenOffice - MySQL Workbench
Узнайте больше: http://forums.mysql.com/read.php?167,221298
Существует проект под названием DBSlayer, который помещает другой слой перед MySQL, с которым Вы говорите через JSON. http://code.nytimes.com/projects/dbslayer
Я думаю, что единственное решение будет состоять в том, чтобы создать асинхронный сервис, который переносится стандартный разъем . Необходимо будет понять API ODBC все же.