İçeriğe geç

Swift 3 ile Grand Central Dispatch kullanımı

Swift 3

Merhabalar bu yazımda Swift 3 ile birlikte kullanım yapısı tamamen değişen ve uygulama geliştirirken çok ciddi ve önemli yerlerde kullandığımız GCD yani Thread yapısını nasıl kullanırız buna örnek vereceğim.

Threadler bildiğimiz gibi işlem gücü olan makinalar için işlemleri ayıran ve zamana bağlı olarak olay işleten yapılardır. Thread sayesinde çoklu işlemleri aynı anda yapabiliriz buda bize uygulama içerisinde büyük avantajlar sağlar.

Aşağıdaki verdiğim yapı ile Threadleri uygulamalarınızda kullanabilirsiniz.

DispatchQueue.main.async {
    print("main thread")
}
let backgroundQueue = DispatchQueue(label: "com.app.testapp",qos: .background,target: nil)
        
        backgroundQueue.async {
            //code
            
        }
 let delay = DispatchTime.now() + .seconds(10)
        
        DispatchQueue.main.asyncAfter(deadline: delay) { 
          // 10 second after
            print("kenanatmaca.com")
        }
let workI = DispatchWorkItem(qos: .default, flags: .assignCurrentContext) {
            print("Test")
        }
        
 DispatchQueue.main.async(execute: workI)
 DispatchQueue.global(qos: .userInteractive).async {
            
            // Background

        }

Değişen kuyruk seçenekleri

* DISPATCH_QUEUE_PRIORITY_HIGH:         .userInitiated
* DISPATCH_QUEUE_PRIORITY_DEFAULT:      .default
* DISPATCH_QUEUE_PRIORITY_LOW:          .utility
* DISPATCH_QUEUE_PRIORITY_BACKGROUND:   .background

asyncAfter’e eklenebilir zamanlar

* .seconds(Int)
* .milliseconds(Int)
* .microseconds(Int)
* .nanoseconds(Int)

 

Tarih:SwiftSwift 3

Bu yazı yorumlara kapalı.

Copyright © 2021 Kenan Atmaca