Ketika saya menjalankan skrip batch menggunakan program GDAL / OGR , saya dapat mendeteksi jika ada kesalahan dengan memeriksa
ERRORLEVEL
nilai 1.Saat menggunakan GDAL / OGR dalam python atau .NET , saya mendapatkan pengecualian ketika terjadi kesalahan.
Pertanyaan:
Bagaimana saya mendeteksi jika Warning
dikeluarkan selama eksekusi?
Mengapa?
Meskipun suatu proses dapat berjalan sampai akhir meskipun ada peringatan, hasilnya mungkin rusak sehubungan dengan data yang saya harapkan. Anda dapat berdebat bahwa saya harus memeriksa korupsi ini, tetapi karena saya memiliki kendali atas seluruh proses, saya ingin dapat berhenti ketika peringatan dikeluarkan.
Jawaban:
Jika menggunakan GDAL 1.10+ binding python memungkinkan Anda menentukan python callable sebagai penangan kesalahan . Namun, penangan kesalahan ini tampaknya dipanggil di utas terpisah dan pengecualian apa pun yang diajukan tidak merambat kembali ke utas utama . Jadi sesuatu seperti ini tidak akan berfungsi:
Tetapi Anda dapat melakukan sesuatu seperti ini:
sumber