DispatchWorkItem no notifica el hilo principal
Nota: Esta no es una pregunta duplicada que ya he vistoGrupo de despacho: no se puede notificar al hilo principal
No hay nada respondido sobreDispatchWorkItem
Tengo un código como el de abajo
let dwi3 = DispatchWorkItem {
print("start DispatchWorkItem \(Thread.isMainThread)")
sleep(2)
print("end DispatchWorkItem")
}
let myDq = DispatchQueue(label: "A custom dispatch queue")
dwi3.notify(queue: myDq) {
print("notify")
}
DispatchQueue.global().async(execute: dwi3)
Que funciona correctamente (puedo ver notificar en la consola) y no en el hilo principaliniciar DispatchWorkItem false
iniciar DispatchWorkItem false
end DispatchWorkItem
notificar
Ahora estoy tratando de notificar al hilo principal usando
dwi3.notify(queue: DispatchQueue.main) {
print("notify")
}
Pero nunca llama, he leído y descubrí que si Thread está bloqueado, se produce la situación. pero ya estoy ejecutandoDisptachWorkItem
enDispatchQueue.global()
Por favor, ¿alguien puede ayudarme en esto? ¿Qué está pasando realmente?