Распространение исключений - PullRequest
       9

Распространение исключений

1 голос
/ 17 сентября 2010

что это значит, когда кто-то говорит разрешить распространение исключения на клиента ??
Как это работает?

Ответы [ 3 ]

3 голосов
/ 17 сентября 2010

«Клиент» - это то, что когда-либо код вызывает вызывающий метод, где встречается исключение. Вы можете обработать это в методе, или если вы не обработаете это, вызывающая сторона получит это исключение. Если он не обрабатывает его, он продолжает подниматься по стеку вызовов методов до тех пор, пока не достигнет Main (), и ничто не обработало его (или некоторый эквивалент), заставляя вмешиваться обработчик необработанных исключений.

Тогда «клиент» будет тем механизмом, который будет отображать «дружественную» ошибку для пользователя, будь то веб-страница или winform и т. Д.

1 голос
/ 17 сентября 2010

Когда выдается исключение, фреймворк ожидает, что оно будет обработано. Он будет смотреть на текущий вызов в стеке вызовов. Если нет подходящего перехвата, он переместится вверх по стеку вызовов к вызывающей стороне текущего вызова. Если там нет подходящего улова, он снова поднимется на уровень. Это будет продолжать делать это. Если он достигает верхней точки входа в программу, то происходит сбой всей программы, что, очевидно, увидит клиент.

1 голос
/ 17 сентября 2010

Исключение, которое не было перехвачено, приведет к преждевременному завершению метода, выполняемого в данный момент. Если метод включения не перехватывает исключение, то же самое происходит и с ним. Это продолжается до тех пор, пока выполнение не вернется к методу Main, после чего само приложение умирает и сообщает об исключительной ситуации в Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...