Re[3]: На сколько затратно выбрасывание исключения
От: Sinix  
Дата: 01.03.15 10:50
Оценка: +1
Здравствуйте, Cynic, Вы писали:

C>При этом операции записи в буфер происходят довольно часто. Правильно ли я понимаю, что в данном случае лучше избегать исключений?

Неправильно При попытке записать мимо буфера в любом случае должно бросаться исключение. Иначе вы останетесь с испорченными данными и никак об этом не узнаете.

Если буфер — простой массив, то исключение бросят за вас, достаточно обернуть его в custom type exception (если требуется).

Если соблюдаются все три условия:
* попытки записать мимо буфера будут происходить постоянно;
* это нормальная ситуация;
* вызывающий код знает, как такие моменты обрабатывать.

(я что-то не могу себе такой сценарий представить, но пусть будет),
то: рядом с методом Write надо добавить TryWrite, который в случае облома не будет писать в буфер и просто вернёт false.

Прочитайте ссылки из моего ответа выше, там всё детально разжёвано.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.