Junior — Middle
Έχεις ερωτήσεις σχετικά με τη χρήση των κορουτινών και τα χαρακτηριστικά τους;
sobes.tech AI
Απάντηση από AI
Οι κορουτίνες στην Python υλοποιούνται με τις λέξεις-κλειδιά async και await και επιτρέπουν τη συγγραφή ασύγχρονου κώδικα που δεν μπλοκάρει την εκτέλεση ενώ περιμένει λειτουργίες εισόδου/εξόδου.
Χαρακτηριστικά των κορουτίνων:
- Δεν δημιουργούν νέα νήματα, λειτουργούν σε ένα μόνο νήμα, εναλλάσσοντας κατά τα σημεία αναμονής.
- Για την εκκίνηση μιας κορουτίνης, απαιτείται ένας βρόχος γεγονότων (
asyncio), που διαχειρίζεται την εκτέλεσή τους. - Οι κορουτίνες επιτρέπουν την αύξηση της απόδοσης όταν εργάζεστε με μεγάλο αριθμό λειτουργιών εισόδου/εξόδου.
Παράδειγμα μιας απλής κορουτίνης:
import asyncio
async def say_hello():
print("Hello")
await asyncio.sleep(1) # προσομοίωση ασύγχρονης λειτουργίας
print("World")
asyncio.run(say_hello())
Αν έχετε ερωτήσεις, π.χ., σχετικά με το πώς να χρησιμοποιείτε σωστά τις κορουτίνες με μπλοκαρισμένο κώδικα ή πώς να διαχειρίζεστε εξαιρέσεις μέσα σε κορουτίνες, μπορώ να βοηθήσω να το κατανοήσετε.