|
|
|
Обработка исключительной ситуации сервиса
|
|||
|---|---|---|---|
|
#18+
Можно ли сделать так, что если во время работы сервиса происходит что-то непотребное, типа NullPointerException или подобное, то программа не вылетала, а останавливался сервис? Я понимаю, что таких мест в программе быть не должно, но всё предусмотреть трудно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 10:47 |
|
||
|
Обработка исключительной ситуации сервиса
|
|||
|---|---|---|---|
|
#18+
Slon747, Можно. Для этого надо перехватывать все исключения и в том месте где будут только "неожидаемые" исключения. И оттуда вызывать остановку сервиса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 10:52 |
|
||
|
Обработка исключительной ситуации сервиса
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Не понял. Так как предусмотреть "неожидаемые исключения"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 11:01 |
|
||
|
Обработка исключительной ситуации сервиса
|
|||
|---|---|---|---|
|
#18+
Slon747Не понял. Так как предусмотреть "неожидаемые исключения"? У вас вопрос "на пальцах", поэтому и ответ тоже. У каждого потока есть точка входа, в которой программист имеет контроль над кодом. В этой точке можно через catch(Throwable t) ловить воообще всё. NPE относитья к классу unchecked exception, который вы, похоже называете "неожиданными". Если прочитать документацию, то можно узреть что все unchecked exception наследуются от класса RuntimeException. Соответсвенно их все можно поймать через catch(Throwable t). Что такое "предусмотреть" в вашем понимании, я не знаю. Например чтобы "предусмотреть" NPE можно использовать Optional либо @NotNull\@Nullable. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 11:07 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=147&tid=2126066]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
343ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 693ms |

| 0 / 0 |
