Производительность Java try/catch, рекомендуется ли сводить к минимуму то, что находится внутри предложения try?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Производительность Java try/catch, рекомендуется ли сводить к минимуму то, что находится внутри предложения try?

Сообщение Anonymous »

Учитывая, что у вас есть такой код:

Код: Выделить всё

doSomething() // this method may throw a checked a exception
//do some assignements calculations
doAnotherThing() //this method may also throw the same type of checked exception
//more calls to methods and calculations, all throwing the same kind of exceptions.
Теперь я знаю, что при создании исключения, особенно при разматывании стека, на самом деле снижается производительность. Я также прочитал несколько статей, указывающих на небольшое снижение производительности при вводе блоков try/catch, но ни одна из статей, похоже, ни к чему не привела.

Мой вопрос заключается в следующем: рекомендуется свести количество строк внутри try catch к минимуму?, т. е. внутри предложения try должны быть ТОЛЬКО те строки, которые действительно могут генерировать перехватываемое вами исключение. Код внутри предложения try работает медленнее или приводит к снижению производительности?

Но что более важно, это лучшая практика/более читаемое решение, учитывая это:

р>

Код: Выделить всё

try {
doSomething() // this method may throw a checked a exception
//do some assignements calculations
doAnotherThing() //this method may also throw the same type of checked exception
//more calls to methods and calculations, all throwing the same kind of exceptions.
}
catch (MyCheckedException e) {
//handle it
}
или :

Код: Выделить всё

try {
doSomething() // this method may throw a checked a exception
}
catch (MyCheckedException e) {
//Store my exception in a Map (this is all running in a loop and I want it to   continue running, but I also want to know which loops didn't complete and why)
continue;
}
//do some assignements calculations
try {
doAnotherThing() // this method may throw a checked a exception
}
catch (MyCheckedException e) {
//Store my exception in a Map (this is all running in a loop and I want it to   continue running, but I also want to know which loops didn't complete and why)
continue;
}
Разумеется, вы будете обрабатывать ВСЕ проверенные исключения одинаково.

Подробнее здесь: https://stackoverflow.com/questions/428 ... he-try-cla
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»