Call Stack

ผู้เขียน: Lewis Jackson
วันที่สร้าง: 8 พฤษภาคม 2021
วันที่อัปเดต: 25 มิถุนายน 2024
Anonim
The Call Stack
วิดีโอ: The Call Stack

เนื้อหา

คำจำกัดความ - Call Stack หมายถึงอะไร

call stack ใน C # เป็นรายการชื่อของเมธอดที่เรียกใช้ ณ รันไทม์จากจุดเริ่มต้นของโปรแกรมจนกระทั่งการดำเนินการคำสั่งปัจจุบัน


สแตกการโทรมีวัตถุประสงค์หลักเพื่อติดตามจุดที่แต่ละรูทีนย่อยที่ใช้งานอยู่ควรส่งคืนการควบคุมเมื่อเสร็จสิ้นการดำเนินการ Call stack ทำหน้าที่เป็นเครื่องมือในการดีบักแอปพลิเคชั่นเมื่อสามารถเรียกวิธีการติดตามได้มากกว่าหนึ่งข้อ สิ่งนี้เป็นทางเลือกที่ดีกว่าการเพิ่มรหัสติดตามไปยังวิธีการทั้งหมดที่เรียกวิธีการที่กำหนด เมื่อใดก็ตามที่มีข้อยกเว้นเกิดขึ้นที่ใดก็ได้ในรหัสผู้ใช้ Common Language Runtime (CLR) จะคลายการโทรสแต็คและค้นหา catch block เพื่อกำหนดประเภทข้อยกเว้นเฉพาะ หากไม่มีตัวจัดการที่เหมาะสม CLR จะยกเลิกแอปพลิเคชัน Call stack จึงถูกใช้เพื่อบอกตัวชี้การดำเนินการว่าจะไปที่ไหนต่อไป

ข้อมูลเบื้องต้นเกี่ยวกับ Microsoft Azure และ Microsoft Cloud | ในคู่มือนี้คุณจะได้เรียนรู้ว่าการประมวลผลแบบคลาวด์คืออะไรและ Microsoft Azure สามารถช่วยคุณในการโยกย้ายและดำเนินธุรกิจจากคลาวด์อย่างไร

Techopedia อธิบาย Call Stack

Call stack จัดเป็น "stack" โครงสร้างข้อมูลในหน่วยความจำสำหรับจัดเก็บรายการในลักษณะเข้า - ออกก่อนเพื่อให้ผู้เรียกรูทีนย่อยส่งที่อยู่กลับไปยังสแต็กและรูทีนย่อยที่เรียกว่าหลังจากเสร็จสิ้น ดึงที่อยู่ผู้ส่งออกจากสแตกการโทรเพื่อโอนการควบคุมไปยังที่อยู่นั้น


ใน C # แอปพลิเคชันใด ๆ เริ่มต้นด้วยวิธี "หลัก" ซึ่งจะเรียกวิธีการอื่น ในทุกการเรียกใช้เมธอดเมธอดจะถูกเพิ่มที่ด้านบนของสแต็กและถูกลบออกจากสแต็กเมื่อกลับไปที่ผู้เรียก นอกจากนี้ขอบเขตของตัวแปรที่ประกาศในบล็อกจะถูกกำหนดจากเวลาที่ค่าถูกส่งไปยังสแต็ก (เป็นส่วนหนึ่งของ call stack) จนกระทั่งการดำเนินการออกจากบล็อกเมื่อตัวแปรและสแต็กการโทรถูกแตกออกจากสแต็ก ดังนั้นสแต็กรักษาทั้งตัวแปรโลคัล (ชนิดของค่า) และ call stack (สแต็กเฟรม) ขนาดที่บ่งบอกถึงความซับซ้อนของโปรแกรม

คำจำกัดความนี้ถูกเขียนในการต่อต้านของ C #