7.4.8 mysql_store_result_nonblocking()
enum net_async_status
mysql_store_result_nonblocking(MYSQL *mysql,
MYSQL_RES **result)
Описание
mysql_store_result_nonblocking() — это асинхронная функция. Она является аналогом синхронной функции mysql_store_result(), предназначенной для использования в приложениях, требующих асинхронного взаимодействия с сервером. Для получения общей информации об написании асинхронных приложений на C API, см. Главу 7, C API Асинхронный интерфейс.
mysql_store_result_nonblocking() используется аналогично mysql_store_result(). Подробности об последней см. в Разделе 5.4.84, «mysql_store_result()». Эти функции отличаются следующим образом:
mysql_store_result()возвращает указатель наMYSQL_RESULTзначение, содержащее набор результатов, илиNULL, если набора результатов нет или произошла ошибка.mysql_store_result_nonblocking()возвращает индикатор состоянияenum net_async_statusи принимает второй аргументresult, который является адресом указателя наMYSQL_RESULT, в который будет сохранён набор результатов. Если возвращаемое значение состояния равноNET_ASYNC_COMPLETE, то аргументresultустанавливается в значениеNULL, если набор результатов отсутствует или произошла ошибка.
mysql_store_result_nonblocking() была добавлена в MySQL 8.0.16.
Значения возврата
Возвращает значение типа enum net_async_status. Смотрите описание в Разделе 7.2, «C API Асинхронные структуры данных». Возврат NET_ASYNC_ERROR указывает на ошибку.
Если возвращаемое значение — NET_ASYNC_COMPLETE, то аргумент result устанавливается в значение NULL, если набор результатов отсутствует или произошла ошибка. Чтобы определить, произошла ли ошибка, проверьте, возвращает ли mysql_error() непустую строку, возвращает ли mysql_errno() ненулевое значение или возвращает ли mysql_field_count() ноль.
Пример
© 2025 Oracle
Licensed under the GPLv2 License.