Sayangnya, ada situasi di mana aplikasi menggantung saat menyimpan dokumen dan berhenti merespons. Fitur ini memungkinkan Anda untuk membatalkan operasi yang berjalan lama dengan baik, seperti menyimpan dokumen PDF yang besar atau kompleks, mencegah pembekuan aplikasi, dan meningkatkan responsivitas. Anda akan menemukan informasi relevan untuk mengintegrasikan fungsionalitas ini ke dalam aplikasi Anda. Perlu dicatat bahwa pendekatan ini memastikan bahwa aplikasi Anda tetap responsif bahkan selama operasi yang memerlukan banyak sumber daya.
Mari kita soroti bahwa implementasi melibatkan beberapa langkah kunci:
InterruptMonitor Pembuatan: Buat objek InterruptMonitor. Objek ini bertindak sebagai sinyal untuk interupsi thread.
ThreadLocalInstance Penugasan: Sebelum memulai operasi Aspose.PDF yang berjalan lama, tetapkan instance InterruptMonitor ke InterruptMonitor.ThreadLocalInstance untuk thread saat ini. Ini menghubungkan monitor ke thread.
Eksekusi Thread: Eksekusi kode yang berisi operasi Aspose.PDF (misalnya, Document.Save()) dalam thread terpisah.
Sinyal Interupsi: Pada titik yang sesuai (misalnya, setelah waktu habis atau tindakan pengguna), panggil monitor.Interrupt(). Ini memberi sinyal kepada thread untuk menghentikan.
Penanganan Pengecualian: Metode Document.Save() melempar OperationCanceledException jika terinterupsi. Tangani pengecualian ini menggunakan blok try-catch. Ingat bahwa penanganan pengecualian yang tepat sangat penting untuk stabilitas aplikasi.
Potongan kode berikut menunjukkan kepada Anda cara menggunakan InterruptMonitor dalam pemrosesan PDF.