В Swift эквивалентной функцией JavaScript setTimeout
является DispatchQueue.main.asyncAfter
. Он позволяет выполнить блок кода после заданной задержки. Вот пример:
DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) {
// Code to be executed after 2 seconds
print("Delayed execution")
}
В приведенном выше примере закрытие будет выполнено с задержкой в 2 секунды. Вы можете настроить задержку, изменив значение 2.0
в соответствии с вашими требованиями.
Вот несколько дополнительных методов, связанных с операциями, основанными на времени, в Swift:
Таймер
: позволяет планировать повторяющиеся или одноразовые задачи.DispatchQueue.asyncAfter
: аналогичноDispatchQueue.main.asyncAfter
, но позволяет указать другую очередь отправки для отложенного выполнения.DispatchWorkItem
: представляет собой единицу работы, которую можно отправить в DispatchQueue с указанной задержкой или приоритетом.