Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε τι είναι οι suspend λειτουργίες στη Kotlin και πώς λειτουργούν;

sobes.tech AI

Απάντηση από AI

Οι συναρτήσεις suspend στο Kotlin είναι συναρτήσεις που μπορούν να διακοπούν και να συνεχιστούν αργότερα χωρίς να μπλοκάρουν το νήμα. Χρησιμοποιούνται για τη συγγραφή ασύγχρονου και μη μπλοκαρισμένου κώδικα.

Βασικά σημεία:

  • Αναφέρονται με τη λέξη-κλειδί suspend.
  • Μπορούν να καλούνται μόνο από άλλες suspend συναρτήσεις ή κορουτίνες.
  • Επιτρέπουν την εκτέλεση μακρών λειτουργιών (π.χ. αιτήματα δικτύου) χωρίς να μπλοκάρουν το κύριο νήμα.

Παράδειγμα:

suspend fun fetchData(): String {
    delay(1000) // διακόπτει την εκτέλεση για 1 δευτερόλεπτο χωρίς να μπλοκάρει το νήμα
    return "Δεδομένα λήφθηκαν"
}

Εδώ, η delay είναι μια suspend συνάρτηση που διακόπτει την κορουτίνα, επιτρέποντας την εκτέλεση άλλων εργασιών κατά τη διάρκεια αυτής της περιόδου.