Classe wrapper para carregar mensagens de e‑mail assíncronas usando Aspose.Email
Classe wrapper para carregamento de mensagens de e‑mail
Há várias situações em que é desejável ter funcionalidade de tempo limite (timeout) para abortar uma ação que está demorando tempo desnecessário. Este artigo fornece uma classe de exemplo para implementar a funcionalidade de timeout ao carregar arquivos EML/MSG que podem causar atrasos muito longos ou falhar ao carregar. Como o timeout não está diretamente relacionado a operações de leitura/escrita de disco ou rede, é pouco útil implementá‑lo dentro da API; é melhor implementá‑lo no lado do usuário, criando uma classe wrapper ao redor do Aspose.
Cancelar uma thread de longa duração pode ser conseguido usando um delegate encapsulado que passa a thread, a ser finalizada, em uma variável local dentro do método que a iniciou. A thread de longa duração é cancelada abortando-a e o controle é devolvido à aplicação principal. O exemplo de código a seguir fornece uma classe wrapper de exemplo ao redor da biblioteca Aspose.Email. O código também demonstra o uso de exemplo da classe wrapper.