2015-08-10 3 views
9

a Swift 1.2, creare una coda di invio proprio come questo:Come utilizzare dispatch_queue_create in Swift 2.0?

dispatch_queue_create("imageProcessingQueue", DISPATCH_QUEUE_SERIAL) 

Ma in rapida 2.0, ha un errore:

Cannot invoke 'dispatch_queue_create' with an argument list of type '(String, dispatch_queue_attr_t!)' 

dispatch_queue_create vogliono un tipo UnsafePointer<Int8>, come posso ottenere che.

risposta

1

Il messaggio di errore è confuso. Molto probabilmente proviene da un codice che circonda (molto probabilmente immediatamente precedente) questo codice.

Per verificare, creare un nuovo parco giochi ed eseguire questo - compila senza errori:

import Foundation 
let queue = dispatch_queue_create("label", DISPATCH_QUEUE_SERIAL) 
11

ho avuto questo problema anche quando si assegna a un lazy var. Sono stato in grado di ignorare l'errore aggiungendo esplicitamente un tipo alla mia variabile:

lazy var myQueue: dispatch_queue_t = dispatch_queue_create("imageProcessingQueue", DISPATCH_QUEUE_SERIAL) 
+0

Grazie nate! Lo avevo solo con Swift 2.3: / – limfinity