Κλήση κλήσης

Συγγραφέας: Lewis Jackson
Ημερομηνία Δημιουργίας: 8 Ενδέχεται 2021
Ημερομηνία Ενημέρωσης: 25 Ιούνιος 2024
Anonim
AJ x Bones - Αναπάντητες Κλήσεις - Official Music Video
Βίντεο: AJ x Bones - Αναπάντητες Κλήσεις - Official Music Video

Περιεχόμενο

Ορισμός - Τι σημαίνει Call Stack;

Μια στοίβα κλήσεων, στο C #, είναι η λίστα των ονομάτων των μεθόδων που ονομάζονται κατά το χρόνο εκτέλεσης από την αρχή ενός προγράμματος μέχρι την εκτέλεση της τρέχουσας δήλωσης.


Μια στοίβα κλήσεων προορίζεται κυρίως να παρακολουθεί το σημείο στο οποίο κάθε ενεργή υπορουτίνα πρέπει να επιστρέψει τον έλεγχο όταν τελειώσει την εκτέλεση. Η στοίβα κλήσεων χρησιμεύει ως εργαλείο για τον εντοπισμό σφαλμάτων μιας εφαρμογής, όταν η μέθοδος που πρέπει να εντοπιστεί μπορεί να καλείται σε περισσότερα από ένα con. Αυτό αποτελεί καλύτερη εναλλακτική λύση από την προσθήκη κώδικα παρακολούθησης σε όλες τις μεθόδους που ονομάζουν τη δεδομένη μέθοδο. Κάθε φορά που μια εξαίρεση πέφτει οπουδήποτε στον κώδικα χρήστη, το Common Language Runtime (CLR) θα ξετυλίξει τη στοίβα κλήσεων και θα αναζητήσει το μπλοκ catch για να καθορίσει τον συγκεκριμένο τύπο εξαίρεσης. Εάν δεν υπάρχει κατάλληλος χειριστής, η CLR θα τερματίσει την εφαρμογή. Συνεπώς, η στοίβα κλήσεων χρησιμοποιείται για να λέει στον δείκτη εκτέλεσης πού να πάει στη συνέχεια.

Εισαγωγή στη Microsoft Azure και το Microsoft Σε αυτό τον οδηγό θα μάθετε τι είναι το cloud computing και πώς η Microsoft Azure μπορεί να σας βοηθήσει να μεταφέρετε και να εκτελέσετε την επιχείρησή σας από το cloud.

Η Techopedia εξηγεί το Call Stack

Η στοίβα κλήσεων είναι οργανωμένη ως "στοίβα", μια δομή δεδομένων στη μνήμη για την αποθήκευση των αντικειμένων κατά τρόπο τελευταίο προς τα εμπρός, έτσι ώστε ο καλών της υπορουτίνας να ωθεί τη διεύθυνση επιστροφής στη στοίβα και την καλούμενη υπορουτίνα μετά την ολοκλήρωση, εμφανίζει τη διεύθυνση επιστροφής από τη στοίβα κλήσεων για να μεταφέρει τον έλεγχο στη διεύθυνση αυτή.


Στο C #, κάθε εφαρμογή αρχίζει με μια "κύρια" μέθοδο, η οποία με τη σειρά της καλεί άλλες μεθόδους. Σε κάθε κλήση σε μια μέθοδο, η μέθοδος προστίθεται στην κορυφή της στοίβας και αφαιρείται από τη στοίβα κατά την επιστροφή της στον καλούντα. Επίσης, το εύρος μιας μεταβλητής που δηλώνεται σε ένα μπλοκ καθορίζεται από τη στιγμή που η τιμή της ωθείται πάνω στη στοίβα (ως μέρος της στοίβας κλήσεων) έως ότου η εκτέλεση εγκαταλείψει το μπλοκ όταν η μεταβλητή και η στοίβα κλήσεων ξεσηκωθούν από τη στοίβα. Έτσι, η στοίβα διατηρεί τόσο τις τοπικές μεταβλητές (τύπους τιμών) όσο και τη στοίβα κλήσεων (πλαίσια στοίβας), το μέγεθος των οποίων υποδηλώνει την πολυπλοκότητα ενός προγράμματος.

Ο ορισμός αυτός γράφτηκε στο con του C #