Загрузка процессора при запуске цикла for-in: OS-x app

Когда мой цикл работает примерно в 15k раз, используется слишком много CPU. Он всегда находится в диапазоне 90-100%. То, что я делаю внутри цикла, представляет собой серию обновления / создания основных данных. Почему это происходит? Я выполняю мой процесс в фоновом режиме, и я также указал приоритет потока на минимальное значение!

One Solution collect form web for “Загрузка процессора при запуске цикла for-in: OS-x app”

Пол R правилен – система будет выполнять задачи в цикле как можно быстрее, учитывая ресурсы, которые она имеет. В этом случае он управляет объектами Core Data в Контексте управляемого объекта и не фиксируется на диске, поэтому единственным ограничением того, насколько быстро он может быть выполнен, является время CPU.

Это вызывает проблему с пользовательским интерфейсом? Теоретически, если поток пользовательского интерфейса требует процессорного времени, он должен его принять. Sleep () исправил бы это, но будет inideal, потому что ваша фоновая задача займет больше времени.

Если это так, есть ли способ разбить работу, чтобы ее можно было просто прорезать, чем петлю позиции 15 000?

Что-то в цикле работает с использованием mutex / @synchronise? Это может привести к задержке до того, как она снизит время CPU, когда будет запрошено, которое может перевести на Laggy UI.

  • Создание смешанной системы Objective-C & Swift
  • Как получить циклы зарядки аккумулятора с подключенного устройства iOS?
  • Как избежать загрузки данных приложений с помощью xcode
  • Скомпилируйте NSLog с unsigned int и unsigned long на iOS и OSX без предупреждения
  • Как получить конкретную область видео в Swift AVPlayer?
  • Разработка как для Mac OS X, так и для iOS
  • Отправить String на веб-сервер в iOS?
  • Получите уникальный идентификатор (MAC-адрес, UDID и т. Д.) В Adobe AIR для iOS
  • KVO не работает: сообщение получено, но не обработано
  • Функция, которая принимает последовательность типа
  • Быстрые родные функции имеют числа в виде шестнадцатеричных строк
  • Interesting Posts
    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.