Menghentikan operasi penyimpanan yang menggantung

Kelas ‘InterruptMonitor’ menyediakan kemampuan untuk menghentikan proses penyimpanan dokumen jika memakan waktu terlalu lama. (https://reference.aspose.com/pdf/net/aspose.pdf.forms/form/properties/xfa).

Potongan kode berikut juga bekerja dengan pustaka Aspose.PDF.Drawing.

Menggunakan InterruptMonitor

Mari kita soroti bahwa implementasi melibatkan beberapa langkah kunci:

  1. InterruptMonitor Pembuatan: Buat objek InterruptMonitor. Objek ini bertindak sebagai sinyal untuk interupsi thread.

  2. 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.

  3. Eksekusi Thread: Eksekusi kode yang berisi operasi Aspose.PDF (misalnya, Document.Save()) dalam thread terpisah.

  4. Sinyal Interupsi: Pada titik yang sesuai (misalnya, setelah waktu habis atau tindakan pengguna), panggil monitor.Interrupt(). Ini memberi sinyal kepada thread untuk menghentikan.

  5. 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.