SORU
5 HAZİRAN 2014, PERŞEMBE


Ne kadar hızlı bir arka plan iş parçacığı kullanmak için?

Hey orada kimse swift parçacığı nasıl kullanacağımı biliyorum

dispatchOnMainThread:^{

    NSLog(@"Block Executed On %s", dispatch_queue_get_label(dispatch_get_current_queue()));

}];

CEVAP
31 Temmuz 2014, PERŞEMBE


İOS 8 ve OS X 10.10 için Apple hizmet sınıfları kalitesini tanıttı. Swift bu nedenle modern sözdizimi aşağıdaki gibidir:

let qualityOfServiceClass = QOS_CLASS_BACKGROUND
let backgroundQueue = dispatch_get_global_queue(qualityOfServiceClass, 0)
dispatch_async(backgroundQueue, {
    println("This is run on the background queue")

   dispatch_async(dispatch_get_main_queue(), { () -> Void in
        println("This is run on the main queue, after the previous code in outer block")
    })
})

Tüm hizmet sınıfların yeni kalite

  1. QOS_CLASS_USER_İNTERACTİVE
  2. QOS_CLASS_USER_İNİTİATED
  3. QOS_CLASS_UTİLİTY
  4. QOS_CLASS_BACKGROUND

Daha fazla bilgi için Apples documentation bkz

Swift 1.2 – sorun, Bilinen ön

Swift 1.1 olarak Apple bazı değişiklikler olmadan yukarıdaki sözdizimi desteği yoktu. QOS_CLASS_BACKGROUND aslında, yerine işe yaramadı geçen Int(QOS_CLASS_BACKGROUND.value) kullanın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NYCarspotter

    NYCarspotter

    26 EYLÜL 2011
  • Roger Huffman

    Roger Huffma

    4 ŞUBAT 2007
  • xdadevelopers

    xdadeveloper

    25 Aralık 2009