Можешь объяснить основные различия между escaping и non-escaping замыканиями в Swift, включая их время жизни, случаи использования и специальные требования для каждого типа? — ДейлиПреп