die Funktion berechnen nehmen lassen() dauert 30 Sekunden, um eine intDoes mit IF LET wirken wie Schließung
Aktualisierung/bearbeiten zurückzukehren: Ich zu erwähnen vernachlässigt lassen vermuten, dies auf einem Hintergrund-Thread und nicht der Haupt-Thread .
calculate() -> Int{
let anInt = ...//task that takes 30 seconds to complete
return anInt
}
Wenn ich if let
bin mit bedingt den Wert berechnen zu einer Variablen binden wie unten:
if let theIntIWant = calculate() as? String {
print("the value I want is: \(theIntIWant)")
}
Wird diese if let
Funktion ähnlich einem Verschluss, wo theIntIWant erst calculate()
kehrt bewertet werden dessen Wert? Ich versuche zu verstehen, wann ich eine Schließung für asynchrone Aufgaben brauche und bin mir nicht sicher, ob ich sie in diesem Fall brauchen würde.