2015-10-06 4 views
1

Существует код в DataUserManual об асинхронном:асинхронное выполнение Обновляется без ждать

Statement stmt = (ses << "SELECT (age) FROM Person", into(age), async); // asynchronous statement 
Statement::Result result = stmt.execute(); // executes asynchronously 
stmt.execute(); // throws InvalidAccessException 

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

Что касается случая, когда я не ожидаю ответа на запросы от БД? Безопасно ли асинхронно вызывать цепочку UPDATE без ожидания результата?

ответ

0

Причина исключения заключается в том, что оператор все еще выполняется. Если вы хотите выпускать обновления параллельно, вам нужны отдельные объекты Statement.

+0

Так что, если я просто создаю новое заявление для каждого нового UPDATE, это будет нормально? – w00drow

+0

Вы можете создать столько операторов, сколько хотите, но будет ли это нормально из среды, ресурсов ввода-вывода и базы данных, я не могу ответить. – Alex

Смежные вопросы