Необработанное исключение в C # (System.IO.IOException) - PullRequest
1 голос
/ 13 мая 2019

Я использую, чтобы получить следующее исключение при чтении / записи в соединение с мертвым сокетом:

System.IO.IOException: Unable to read data from the transport connection: Operation on non-blocking socket would block

Пока я не могу поймать это в секции catch в try-catch. Есть идеи? Там написано Unhandled Exception ..

Это код:

try
{
    Bitmap bmp = BitmapFactory.DecodeStream(CommunicationHandler.GetStream());
}
catch (Exception ex)
{
    if (ex is System.IO.IOException)
        {
            //Some code which is unreachable..
        }
}

Я не думаю, что это должно что-то делать с Bitmap obj, но что-то вроде исключения, которое не может быть поймано. Кажется, что программа даже не входит в раздел catch.

1 Ответ

1 голос
/ 13 мая 2019

Теоретически ваш код должен работать.Вот несколько случаев для проверки:

  • Исключение не относится к типу System.IO.IOException.Проверьте документацию, быстрый поиск найден это .Это может быть пользовательское исключение. Если у вас есть возможность, вы можете также проверить тип исключения:

    ex.GetType ();

  • Если выскажем, вы не включили блок catch, вы уверены, что не вызываете асинхронный метод, который где-то не ожидается?

...