Я веду журнал диагностики в событии Page_Unload в приложении asp.net, это ведение журнала может занять довольно много времени (около 100 мс). Будет ли поток ответа задержан кодом в обработчике выгрузки страницы? Я мог бы выполнять свою работу асинхронно, используя пул объявлений, но я бы предпочел этого не делать, если это не повлияет на время отклика клиента.
Дополнительная информация:
@thorkia прав в том, что в документации сказано, что Page_Unload вызывается после отправки ответа клиенту, но в моем тестировании (по совету @steve) он действительно блокирует . Я пробовал Casini, IIS Express, Full IIS 7.5 (на тестовом сервере) как с выпуском, так и с отладкой, с подключенным отладчиком и без него. И, цепляясь за соломинку, я попытался указать Async=true в директиве страницы. Я пробовал с Fiddler (потоковая передача включена) и без Fiddler. Я пробовал с IE9 и Firefox. Если документация «правильная», то мне интересно, она действительно отправляет ответ, но, возможно, не «завершает его» (что бы это ни значило, мне нужно будет проверить спецификацию HTTP), и поэтому страница не отображается в браузер? Но я так понимаю, что клиентский браузер начинает отображать страницу, когда он получает байты, для меня это тоже не имеет смысла. Я также пытался посмотреть код в IL Spy, но думаю, что это может занять у меня много времени.
Теперь я заинтригован; Я делаю что-то не так, или документация вводит в заблуждение?