Код IT Загрузка примера кода…

Plain text main.swift
func temperatureUpdates() -> AsyncStream<Double> {
    return AsyncStream { continuation in
        let timer = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) { _ in
            let temp = readCurrentTemperature()
            continuation.yield(temp)
        }
        continuation.onTermination = { _ in
            timer.invalidate()
        }
    }
}

// Использование
for await temperature in temperatureUpdates() {
    print("Текущая температура: \(temperature)")
}
func temperatureUpdates() -> AsyncStream<Double> {
    return AsyncStream { continuation in
        let timer = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) { _ in
            let temp = readCurrentTemperature()
            continuation.yield(temp)
        }
        continuation.onTermination = { _ in
            timer.invalidate()
        }
    }
}

// Использование
for await temperature in temperatureUpdates() {
    print("Текущая температура: \(temperature)")
}