Penanganan Pengecualian Terstruktur

Pengecualian adalah peristiwa yang terjadi selama eksekusi program, dan memerlukan eksekusi kode di luar aliran kontrol normal. Ada dua jenis pengecualian: pengecualian perangkat keras dan pengecualian perangkat lunak. Pengecualian perangkat keras dimulai oleh CPU. Mereka dapat dihasilkan dari eksekusi urutan instruksi tertentu, seperti pembagian dengan nol atau upaya untuk mengakses alamat memori yang tidak valid. Pengecualian perangkat lunak dimulai secara eksplisit oleh aplikasi atau sistem operasi. Misalnya, sistem dapat mendeteksi kapan nilai parameter yang tidak valid ditentukan.

Penanganan pengecualian terstruktur adalah mekanisme untuk menangani pengecualian perangkat keras dan perangkat lunak. Oleh karena itu, kode Anda akan menangani pengecualian perangkat keras dan perangkat lunak secara identik. Penanganan pengecualian terstruktur memungkinkan Anda memiliki kontrol penuh atas penanganan pengecualian, memberikan dukungan untuk debugger, dan dapat digunakan di semua bahasa dan mesin pemrograman. Penanganan pengecualian vektor adalah ekstensi untuk penanganan pengecualian terstruktur.

Sistem ini juga mendukung penanganan penghentian, yang memungkinkan Anda memastikan bahwa setiap kali isi kode yang dijaga dijalankan, blok kode penghentian yang ditentukan juga dijalankan. Kode penghentian dijalankan terlepas dari bagaimana alur kontrol meninggalkan tubuh yang dijaga. Misalnya, handler penghentian dapat menjamin bahwa tugas pembersihan dilakukan bahkan jika pengecualian atau beberapa kesalahan lain terjadi saat isi kode yang dijaga sedang dijalankan.