WatchOS и когда ставить методы в основной поток

Похоже, что для расширений WatchOS, это чаще всего тот случай, когда код должен быть явно размещен в основном потоке, в отличие от явного помещения в фоновом режиме или другой очереди, как в IOS. Какие действия нужно явно указать в главном потоке в расширениях WatchOS? Я видел, что это делается при обновлении пользовательского интерфейса или при изменении состояния тренировки с помощью HealthKit.

Например, прежде чем я обновлю значения меток на своем контроллере представления интерфейса watchOS, я вызываю основную очередь:

func locationUpdate(locationDict: [String:AnyObject]) {
     dispatch_async(dispatch_get_main_queue()) {
    if let first = locationDict["firstValue"] as? String {
        self.firstValue.setText(first)
    }
    if let second = locationDict["second"] as? String {
        self.secondValue.setText(second)
    }
    }

Это обязательно? Я бы не стал делать это в iOS. Есть ли другие распространенные случаи? Есть ли хорошая рекомендация относительно специальных соображений основной очереди для WatchOS?

0 ответов

Другие вопросы по тегам