Helista pinu

Autor: Lewis Jackson
Loomise Kuupäev: 8 Mai 2021
Värskenduse Kuupäev: 25 Juunis 2024
Anonim
Смотрите 16–17–18 серии юмористического телесериала для подростков (10+) - "Хочу в Париж".
Videot: Смотрите 16–17–18 серии юмористического телесериала для подростков (10+) - "Хочу в Париж".

Sisu

Määratlus - mida kõnede pinu tähendab?

C # -s olev kõnede pinu on meetodite nimede loend, mida kutsutakse käivituse ajal programmi algusest kuni praeguse väljavõtte täitmiseni.


Kõnede pinu on mõeldud peamiselt selle punkti jälgimiseks, kuhu iga aktiivne alamprogramm peaks täitmise lõpetamisel kontrolli tagasi saama. Kõnede pinu toimib rakenduse silumise vahendina, kui jälgitavat meetodit saab kutsuda rohkem kui ühes kontekstis. See on parem alternatiiv kui jälgimiskoodi lisamine kõigile meetoditele, mis nimetatud meetodit kutsuvad. Kui kasutajakoodis tehakse mõni erand, keerab Common Language Runtime (CLR) kõnepakkumise lahti ja otsib konkreetse erandi tüübi määramiseks püügiplokki. Kui sobivat käitlejat pole, lõpetab CLR taotluse. Seetõttu kasutatakse kõnepakkumist, et öelda täitmiskursorile, kuhu edasi liikuda.

Sissejuhatus Microsoft Azure'i ja Microsoft Cloud | Kogu selle juhendi kaudu saate teada, mis on pilvandmetöötlus ja kuidas Microsoft Azure aitab teil pilvest rännata ja oma ettevõtet juhtida.

Techopedia selgitab Call Stacki

Kõnede virn on korraldatud kui "virn" - andmestruktuur mälus üksuste viimaseks-esimeseks-väljundiks hoidmiseks, nii et alamprogrammi helistaja lükkab pärast lõpetamist tagasiaadressi virna ja kutsutud alamprogrammi, hüppab tagastamisaadressi kõnepostil ära, et viia juhtimine üle sellele aadressile.


C #-s algab iga rakendus "peamise" meetodiga, mis omakorda kutsub teisi meetodeid. Iga meetodikõne korral lisatakse meetod virna ülaossa ja eemaldatakse virnast, kui naasete helistajale. Samuti määratakse plokis deklareeritud muutuja ulatus alates hetkest, kui selle väärtus surutakse virnale (kõnepakkumise osana), kuni teostus lahkub plokist, kui muutuja ja kõnepakk hüpoteki küljest hüppavad. Seega säilitab pinu nii kohalikke muutujaid (väärtuse tüüpe) kui ka kõne pinu (pinu raamid), mille suurus näitab programmi keerukust.

See määratlus kirjutati C #