Странное исключение при использовании Async в приложении .net - PullRequest
0 голосов
/ 03 декабря 2011

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

System.Threading.ThreadAbortException: Thread was being aborted.     
    at System.Net.UnsafeNclNativeMethods.OSSOCK.send(IntPtr socketHandle, Byte* pinnedBuffer, Int32 len, SocketFlags socketFlags)     
    at System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, SocketError& errorCode)

Если кто-нибудь может сообщить мне, что означает это исключение и что может его вызвать.

Ответы [ 2 ]

0 голосов
/ 03 декабря 2011

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

0 голосов
/ 03 декабря 2011

Обычно это ошибка тайм-аута.

Вы установили тайм-аут или MaxLength для загружаемого файла? Может превышать значения по умолчанию.

Вы можете установить их в своем web.config

<system.web>
    <httpRuntime executionTimeout="9999999" maxRequestLength="2048000" />
</system.web>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...