mysql_store_result () @ MySQL C API - действительно ли он выделяет память при каждом вызове? - PullRequest
3 голосов
/ 05 марта 2010

Я читал, что mysql_store_result () в MySQL C API будет выделять память для каждого его вызова;

mysql_store_result() reads the entire result of a query to the client, allocates a MYSQL_RES structure, and places the result into this structure.

Это действительно так? Я спрашиваю, потому что я собираюсь вызвать его много раз в серверном приложении. Распределение / освобождение ужасно для моей цели.

Есть ли способ предоставить ему собственный буфер? Может быть, какой-то «недокументированный» API?

Ответы [ 2 ]

2 голосов
/ 05 марта 2010

Смотрите эту ссылку об использовании mysql_use_result: http://dev.mysql.com/doc/refman/5.0/en/mysql-use-result.html

Я использую «use_result» вместо «store_result» во всех выбранных запросах.

0 голосов
/ 06 марта 2010

Да, это действительно так.Почему бы не быть?

Возможно, вы хотите изменить свой вопрос так: «Что я могу вместо этого сделать?»а не "Это действительно так?"Судя по вашим комментариям, это то, что вы на самом деле хотите знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...