Kutsupino

Kirjoittaja: Lewis Jackson
Luomispäivä: 8 Saattaa 2021
Päivityspäivä: 25 Kesäkuu 2024
Anonim
Luento 9: Debuggaus, taulukot
Video: Luento 9: Debuggaus, taulukot

Sisältö

Määritelmä - mitä Call Stack tarkoittaa?

C # -puhelupino on luettelo niiden menetelmien nimistä, joita kutsutaan ajoaikana ohjelman alusta ohjelman nykyisen käskyn suorittamiseen saakka.


Puhelupino on pääasiassa tarkoitettu seuraamaan pistettä, johon jokaisen aktiivisen aliohjelman tulisi palata hallinta, kun se suorittaa loppuun suorittamisen. Puhelupino toimii välineenä sovelluksen virheenkorjaamiseen, kun jäljitettävää menetelmää voidaan kutsua useammassa kuin yhdessä con. Tämä on parempi vaihtoehto kuin jäljityskoodin lisääminen kaikkiin menetelmiin, jotka kutsuvat annettua menetelmää. Aina, kun poikkeus heitetään mihin tahansa käyttäjäkoodiin, Common Language Runtime (CLR) purkaa puhelupinon ja etsii saalilohkoa erityisen poikkeustyypin määrittämiseksi. Jos asianmukaista käsittelijää ei ole, CLR lopettaa hakemuksen. Siksi soittopinoa käytetään kertomaan suoritusosoittimeen, minne seuraavaksi mennä.

Johdanto Microsoft Azureen ja Microsoft Cloud | Tämän oppaan läpi opit mitä pilvipalvelussa on kyse ja kuinka Microsoft Azure voi auttaa sinua siirtämään ja johtamaan yritystä pilvestä.

Techopedia selittää Call Stackin

Puhelujen pino on järjestetty "pinoksi", tietorakenteeksi muistiin kohteiden säilyttämiseksi viimeisenä ensimmäisessä-ulos-muodossa siten, että aliohjelman soittaja työntää palautusosoitteen pinolle ja kutsutulle aliohjelmalle valmistuksen jälkeen, aukaisee paluuosoitteen puhelun pinosta pois siirtääksesi ohjauksen tähän osoitteeseen.


C #: ssa mikä tahansa sovellus alkaa "pää" -menetelmällä, joka puolestaan ​​kutsuu muita menetelmiä. Jokaisen menetelmäsoiton yhteydessä menetelmä lisätään pinon yläosaan ja poistetaan pinosta palautettaessa soittajalle. Lisäksi lohkossa ilmoitetun muuttujan laajuus määritetään siitä hetkestä lähtien, kun sen arvo työnnetään pinolle (osana puhelu pinoa), kunnes suorittaminen poistuu lohkosta, kun muuttuja ja puhelu pinot aukeavat pinosta. Siten pino ylläpitää sekä paikallisia muuttujia (arvotyyppejä) että kutsupinoa (pinokehyksiä), joiden koko osoittaa ohjelman monimutkaisuuden.

Tämä määritelmä kirjoitettiin C #: n con