& ldquo; Вторая операция началась в этом контексте до завершения предыдущей операции. & rdquo; ошибка при работе с задачами [дубликат]

Короткий ответ: вам нужно выполнить обратный вызов следующим образом:

function callback(response) {
    // Here you can do what ever you want with the response object.
    console.log(response);
}

$.ajax({
    url: "...",
    success: callback
});
44
задан usr 11 July 2014 в 17:15
поделиться

2 ответа

Это не поддерживается в соответствии с спецификациями версии 6 .

Это должно вызвать исключение DbConcurrencyException, говорящее

A second операция началась в этом контексте до завершения предыдущей асинхронной операции. Используйте «ждут», чтобы убедиться, что какие-либо асинхронные операции были выполнены до вызова другого метода в этом контексте. Любые члены экземпляра не гарантируют безопасность потоков.

EF будет определять, пытается ли разработчик выполнить две операции асинхронного действия за один раз и бросить.

Из pageplex проекта :

Включение асинхронного выполнения операций с базой данных на самом деле ортогонально, чтобы включить одновременное выполнение в том же контексте. В конкретном случае сценариев сервера использование параллельного доступа может негативно повлиять на масштабируемость, поскольку это будет означать, что для обработки одного запроса вы будете вращать произвольное количество разных потоков. Все потоки будут конкурировать за такие ресурсы, как память с другими потоками, необходимыми для сервера других параллельных запросов.

53
ответ дан usr 24 August 2018 в 02:11
поделиться
2
ответ дан jkruer01 24 August 2018 в 02:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: