Junior — Middle
Y a-t-il une possibilité de mettre en œuvre sa propre structure de file d'attente?
sobes.tech IA
Réponse de l'IA
Oui, il est possible de mettre en œuvre une structure de file d'attente personnalisée sur iOS. Par exemple, vous pouvez créer une classe qui stocke des éléments dans un tableau et fournit des méthodes pour ajouter (enqueue) et supprimer (dequeue) des éléments selon le principe FIFO (premier entré, premier sorti). Cela peut être utile si les classes standard, comme DispatchQueue, ne conviennent pas à des tâches spécifiques.
Exemple d'une file d'attente simple en Swift:
class Queue<T> {
private var elements: [T] = []
func enqueue(_ element: T) {
elements.append(element)
}
func dequeue() -> T? {
guard !elements.isEmpty else { return nil }
return elements.removeFirst()
}
var isEmpty: Bool {
return elements.isEmpty
}
}
let queue = Queue<Int>()
queue.enqueue(1)
queue.enqueue(2)
print(queue.dequeue()) // 1
print(queue.dequeue()) // 2