Я давно занимаюсь любительским кодированием на Python и чувствую себя довольно комфортно с ним.Недавно, хотя я писал свой первый Daemon и пытаюсь понять, как должны работать мои программы.
В моих прошлых программах исключения можно было обработать, просто отменив программу, возможно, после небольшой очисткивверх.Единственное соображение, которое я должен был уделить структуре программы, - это эффективная обработка ввода без исключений.В сущности, «Мусор вошел, ничего не вышел».
В моем демоне есть внешний цикл, который фактически никогда не заканчивается, и оператор сна внутри него для управления интервалом, в котором происходят события.Обработка допустимых входных данных проста, но я изо всех сил пытаюсь понять, как лучше справляться с исключениями.Иногда исключение может происходить на нескольких уровнях вложенных функций, и каждому необходимо что-то вернуть своему родителю, который, в свою очередь, должен вернуть что-то своему родителю, пока управление не вернется к самому внешнему циклу.Каждая функция должна быть способна обрабатывать любое исключительное состояние не только для себя, но и для всех своих подчиненных.
Я прошу прощения за неопределенность моего вопроса, но мне интересно, может ли кто-нибудь предложить мне несколько общих указателей накак эти исключения должны быть обработаны.Должен ли я смотреть на порождающие подпроцессы, которые могут быть прекращены без влияния на родителя?(Удаленная) возможность состоит в том, что я делаю вещи правильно и действительно нуждаюсь во всей этой вложенной обработке.Другая очень реальная возможность заключается в том, что я понятия не имею, о чем говорю.:)
Стив