สารบัญ:
คำจำกัดความ - Thunk หมายถึงอะไร
thunk ในบริบทการคำนวณทั่วไปคือชิ้นส่วนของรหัสที่สร้างด้วยเครื่องจักรระดับต่ำซึ่งใช้รายละเอียดของระบบซอฟต์แวร์ เป็นหนึ่งในสิ่งต่อไปนี้:
- ชิ้นส่วนของรหัสที่ทำการคำนวณล่าช้า
- คุณลักษณะของการนำตารางฟังก์ชันเสมือนมาใช้
- การแมปข้อมูลเครื่องจากแบบฟอร์มเฉพาะระบบหนึ่งไปยังอีกแบบหนึ่งสำหรับปัญหาความเข้ากันได้
Techopedia อธิบาย Thunk
แนวคิดของ thunk เกิดขึ้นในต้นปีพ. ศ. 2504 เป็นการคำนวณที่คืนค่าอาร์กิวเมนต์เมื่อถูกประหารชีวิต การเรียกใช้โดยต้องการแทนที่ thunk ด้วยค่าส่งคืนหลังจากการเรียกใช้ครั้งแรก ภาษาที่มีการผูกปลายมีการค้นหาในเวลาทำงานขึ้นอยู่กับการคำนวณที่ดำเนินการโดย thunk
ฟังก์ชั่น Nullary (ฟังก์ชั่นที่ไม่ใช้อาร์กิวเมนต์) ในการเขียนโปรแกรมฟังก์ชั่นจะเรียกว่า thunk Thunks จำลองการประเมินแบบสันหลังยาวและชะลอการคำนวณอาร์กิวเมนต์ของฟังก์ชัน ฟังก์ชั่นเหล่านี้บังคับให้ thunks รับค่าจริง Thunk อาจปรากฏขึ้นตามธรรมชาติในการใช้งานฟังก์ชั่นคงที่ในการเขียนโปรแกรมระดับสูง
คอมไพเลอร์ของภาษาเชิงวัตถุเช่น C ++ สร้างฟังก์ชันที่เรียกว่า thunks พวกเขาเพิ่มประสิทธิภาพการเรียกฟังก์ชั่นเสมือนในการแสดงตนของเสมือนหรือหลายมรดก
อินสแตนซ์ของรหัส relocatable บางตัวใช้ thunks โลคอลเพื่อเรียกใช้ฟังก์ชันไลบรารี การเรียกไลบรารี่แบบไดนามิกในโค้ดจะข้ามไปที่ลิ้งค์ในตารางการกระโดดซึ่งจะถูกแทนที่ด้วยฟังก์ชั่นการโหลดไลบรารีที่เกี่ยวข้องหรือย้ายไปยังจุดที่เหมาะสมในไลบรารีที่โหลดแล้ว ดังนั้น thunk ในพื้นที่นี้จะคำนวณหรือส่งคืนค่าที่คำนวณและแคชไว้ก่อนหน้านี้ Thunks ใช้ในระบบหน่วยความจำเสมือนที่ใช้ซอฟต์แวร์เพื่อทำการแมปจากที่อยู่เสมือนไปยังที่อยู่ทางกายภาพ การสร้างเครื่อง DOS 16 บิตเสมือนจริงภายในระบบปฏิบัติการ 32 บิตนั้นเรียกว่า thunking และรับรองความเข้ากันได้ย้อนหลังกับแอปพลิเคชันที่ใช้การเรียกใช้ระบบเก่า
ชุดแบนใช้ thunks แปลการโทรจากรหัส 32 บิตเป็นรหัส 16 บิต รหัสกลางแปลที่อยู่หน่วยความจำระหว่างแพลตฟอร์ม Microsoft มีชั้นของตัวเองที่เรียกว่า Win32s ซึ่งอนุญาตให้แอปพลิเคชัน Windows 32 บิตทำงานบน Windows 16 บิต เวอร์ชั่น 64 บิตของ Windows ยังมีชั้นของ thunking คือ WoW64 ซึ่งอนุญาตให้ใช้แอพพลิเคชั่นของ Windows 32 บิต