Обработка исключений

Эта статья содержит сведения о поддержке обработки исключений в F#.

Основы обработки исключений

Обработка исключений является стандартным способом для обработки ошибок в .NET Framework. Поэтому этот механизм должен поддерживаться любым языком .NET, включая F#. Исключение — это объект, инкапсулирующий информацию об ошибке. При возникновении ошибки возникают исключения и обычное выполнение останавливается. Вместо этого среда выполнения ищет подходящий обработчик для исключения. Поиск начинается в текущей функции и продолжается вверх по стеку через все уровни вызывающих объектов, пока не будет найден соответствующий обработчик. Затем этот обработчик запускается.

Кроме того, по мере раскрутки стека среда выполнения выполняет весь код в блоках finally, обеспечивая правильную очистку объектов во время процесса раскрутки.

Заголовок Описание
Типы исключения Описывает объявление типа исключения.
Исключения: выражение try...with Описывает языковую конструкцию, поддерживающую обработку исключений.
Исключения: выражение try...finally Описывает языковую конструкцию, позволяющую выполнять код очистки по мере раскрутки стека при возникновении исключения.
Исключения: функция raise Описывает активацию объекта исключения.
Исключения: функция failwith Описывает создание общего исключения F#.
Исключения: функция invalidArg Описывает создание исключения недопустимого аргумента.