Sună Stack

Autor: Lewis Jackson
Data Creației: 8 Mai 2021
Data Actualizării: 25 Iunie 2024
Anonim
Colo primeste 30000 de euro donatii!!
Video: Colo primeste 30000 de euro donatii!!

Conţinut

Definiție - Ce înseamnă Call Stack?

Un stack de apeluri, în C #, este lista de nume ale metodelor apelate la timpul de execuție de la începutul unui program până la execuția instrucțiunii curente.


Un stack de apeluri este destinat în principal să țină evidența punctului către care fiecare subrutină activă ar trebui să returneze controlul atunci când termină executarea. Stiva de apeluri funcționează ca un instrument de depanare a unei aplicații atunci când metoda de urmărit poate fi apelată în mai multe conturi. Aceasta reprezintă o alternativă mai bună decât adăugarea codului de urmărire la toate metodele care apelează la metoda dată. Ori de câte ori o excepție este aruncată oriunde în codul utilizatorului, Common Language Runtime (CLR) va anula stiva de apeluri și va căuta blocul de captură pentru a determina tipul de excepție specific. Dacă nu există un operator adecvat, CLR va încheia cererea. Stilul de apeluri este, prin urmare, utilizat pentru a indica indicatorul de execuție unde trebuie să urmeze.

O introducere în Microsoft Azure și Microsoft Cloud | În acest ghid, veți afla despre ce este vorba despre cloud computing și despre cum Microsoft Azure vă poate ajuta să migrați și să conduceți afacerea din cloud.

Techopedia explică Call Stack

Stiva de apeluri este organizată ca „stivă”, o structură de date în memorie pentru stocarea articolelor într-o manieră finală-în-prima, astfel încât apelantul subrutinei împinge adresa de retur pe stivă și subrutină numită, după terminare, deschide adresa de retur de pe stiva de apeluri pentru a transfera controlul la adresa respectivă.


În C #, orice aplicație începe cu o metodă „principală”, care la rândul ei numește alte metode. La fiecare apel către o metodă, metoda este adăugată în partea de sus a stivei și este eliminată din stivă la întoarcerea la apelant. De asemenea, domeniul de aplicare al unei variabile declarate într-un bloc este determinat din momentul în care valoarea sa este împinsă pe stivă (ca parte a stivei de apeluri) până când execuția părăsește blocul atunci când variabila și stiva de apeluri sunt scoase din stivă. Astfel, stiva menține atât variabile locale (tipuri de valori), cât și stack stack (cadre de stivă), a căror dimensiune indică complexitatea unui program.

Această definiție a fost scrisă în versiunea lui C #