Класс Wrapper для асинхронной загрузки сообщений электронной почты с помощью Aspose.Email
Класс Wrapper для загрузки сообщений электронной почты
В ряде случаев желательно использовать функцию «Тайм-аут», чтобы прервать действие, которое занимает ненужное время. В этой статье представлен пример класса, позволяющего реализовать функциональность функции Time Out при загрузке файлов EML/MSG, загрузка которых может привести к очень длительным задержкам или сбоям. Поскольку Time out напрямую не связан с операциями чтения/записи на диск или в сети, бесполезно внедрять эту функцию в API, чем реализовывать ее на стороне пользователя, написав класс-оболочку на основе Aspose.
Отмена длительно выполняющегося потока может быть достигнута с помощью обернутого делегата, который передает поток и удаляет его в локальную переменную в инициировавшем его методе. Длительный поток отменяется путем его прерывания, а управление возвращается основному приложению. В следующем примере кода представлен пример класса-оболочки для библиотеки Aspose.Email. В коде также приведен пример использования класса-оболочки.