Обработка ошибок, Процедура обработки ошибок, Установить обработчик ошибок (OnError), Дать номер ошибки (GetError) - Функциональные модели универсального нейрокомпьютера

Схема обработки ошибок достаточно проста по своей идее - каждый новый обработчик ошибок может обрабатывать только часть ошибок, а обработку остальных может передать ранее установленному обработчику. Пользователь может организовать обработку ошибок и не прибегая к установке обработчика ошибок - обработчик ошибок по умолчанию почти во всех случаях устанавливает номер последней ошибки в переменную Error, которая может быть считана с помощью запроса GetError и обработана прямо в компоненте, выдавшем запрос.

Если обработчик ошибок устанавливает номер последней ошибки в переменной Error, то все запросы, поступившие после момента установки, завершаются неуспешно. Это состояние сбрасывается при вызове запроса "дать номер ошибки".

Процедура обработки ошибок

Процедура обработки ошибок должна быть процедура с дальним типом адресации. Формат описания процЕдуры обработки ошибок

Pascal:

Procedure ErrorFunc( ErrorNumber : Long ); Far;

C:

Void far ErrorFunc(Long ErrorNumber)

I. После обработки ошибок процедура может вызвать ранее установленный обработчик ошибок. Адрес ранее установленного обработчика ошибок процедура обработки ошибок получает в ходе следующей процедуры:

A. Вызов процедуры с нулевым номером ошибки означает, что в следующем вызове будет передан адрес старой процедуры обработки ошибок.

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

Ниже приведено описание запросов, связанных с обработкой ошибок и исполняемых макрокомпонентом нейрокомпьютер.

Установить обработчик ошибок (OnError)

Описание запроса:

Pascal:

Function OnError( NewError : ErrorFunc ) : Logic;

C:

Logic OnError(ErrorFunc NewError)

Описание аргументов:

NewError - адрес новой процедуры обработки ошибок.

Назначение - устанавливает новый обработчик ошибок.

Описание исполнения.

Если Error <> 0, то выполнение запроса прекращается.

Вызов NewError с аргументом 0 - настройка на установку цепочки обработки ошибок.

Вызов NewError с аргументом ErrorManager (вместо длинного целого передается адрес старой процедуры обработки ошибок).

ErrorManager := NewError

Дать номер ошибки (GetError)

Описание запроса:

Pascal:

Function GetError : Integer;

C:

Integer GetError()

Назначение - возвращает номер последней необработанной ошибки и сбрасывает ее.

Описание исполнения.

GetError := Error

Error := 0

Списки ошибок, возникающих в различных компонентах, даны в разделах "Ошибки компоненты...", в соответствующих главах. Все номера ошибок каждого компонента являются трехзначными числами и начинаются с номера компонента, указанного в колонке "Ошибка" табл. 5.

Похожие статьи




Обработка ошибок, Процедура обработки ошибок, Установить обработчик ошибок (OnError), Дать номер ошибки (GetError) - Функциональные модели универсального нейрокомпьютера

Предыдущая | Следующая