Swift LanguageConcurrencia


Sintaxis

  • Swift 3.0

  • DispatchQueue.main // Obtener la cola principal

  • DispatchQueue (etiqueta: "my-serial-queue", atributos: [.serial, .qosBackground]) // Crea tu propia cola serial privada

  • DispatchQueue.global (atributos: [.qosDefault]) // Accede a una de las colas simultáneas globales

  • DispatchQueue.main.async {...} // Distribuye una tarea de forma asíncrona al hilo principal

  • DispatchQueue.main.sync {...} // Distribuye una tarea de forma sincrónica al hilo principal

  • DispatchQueue.main.asyncAfter (fecha límite: .now () + 3) {...} // Distribuye una tarea de forma asíncrona al hilo principal que se ejecutará después de x segundos

  • Swift <3.0

  • dispatch_get_main_queue () // Obtenga la cola principal ejecutándose en el hilo principal

  • dispatch_get_global_queue (dispatch_queue_priority_t, 0) // Obtener cola global con prioridad especificada dispatch_queue_priority_t

  • dispatch_async (dispatch_queue_t) {() -> Void in ...} // Distribuye una tarea de forma asíncrona en la dispatch_queue_t especificada

  • dispatch_sync (dispatch_queue_t) {() -> Void in ...} // Distribuye una tarea de forma síncrona en el dispatch_queue_t especificado

  • dispatch_after (dispatch_time (DISPATCH_TIME_NOW, Int64 (nanosegundos)), dispatch_queue_t, {...}); // Enviar una tarea en la dispatch_queue_t especificada después de nanosegundos

Concurrencia Ejemplos relacionados