Swift3でGrand Central Dispatchも大幅に変わっているので、簡単にまとめました。 dispatch_queue concurrent queue(実行スレッドは複数で同時に複数タスク)やserial queue(実行スレッドは1つでタスクごとに違うスレッドで実行される可能性はあるが、同時に1タスク)の生成は、以下のように行います。 // concurrent queue let concurrentQueue = DispatchQueue(label: "com.example.concurrent-queue", attributes: .concurrent) // serial queue let serialQueue = DispatchQueue(label: "com.example.serial-queue")