Обложка канала

iOS Dev

iOS разработчик, который делится фишками, своим опытом и опытом других. В этом канале вы сможете найти истории из жизни, подходы к реализации а также новости и тренды из мира iOS-разработки Авторский канал, iOS разработка

iOS Dev

4 года назад
Открыть в
Xcode's Energy Organizer: поиск причин крашей при высокой нагрузке на CPU Если вы не знаете, что такое CPU Usage termination, вам повезло. Это не только один из самых неприятных крашей в iOS, но он даже не рассматривается системой как сбой. Об этом не сообщается Firebase, поэтому о сбое вы даже не узнаете. Ну, пока ваши пользователи не начнут сообщать вам об этом. Очень неприятная вещь! 🤔 Что такое CPU Exceptions в iOS? Согласно Apple, ваше приложение может грузить процессор — до тех пор, пока оно в foreground и не делает это долго. Однако если оно в фоне, вам необходимо сократить использование процессора. Это не то чтобы большая проблема, если задача выполняется единожды. Но если вы постоянно используете более 80% процессора в течение одной минуты, iOS без предупреждения закроет приложение. Это называется CPU Exception, или "прекращение работы при высокой нагрузке на процессор". 📖 В статье разбирается это понятие, рассматривается Xcode's Energy Organizer и приводится совет для предотвращения.