Classe Wrapper para carregar Mensagens de Email Assincronicamente usando Aspose.Email
Classe Wrapper para carregar Mensagens de Email
Existem várias ocorrências onde é desejável ter funcionalidade de Timeout para abortar uma ação que está levando um tempo desnecessariamente longo. Este artigo fornece uma classe de exemplo para alcançar a funcionalidade de Timeout ao carregar arquivos EML/MSG que podem levar a atrasos muito longos ou falhar ao carregar. Como o Timeout não está diretamente relacionado a operações de leitura/gravação em disco ou rede, é de pouca utilidade implementar esse recurso dentro da API do que tê-lo implementado no lado do usuário escrevendo uma classe wrapper ao redor do Aspose.
Cancelar uma thread de longa duração pode ser alcançado com o uso de um delegado 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 é retornado à aplicação principal. O seguinte exemplo de código fornece uma classe wrapper em torno da biblioteca Aspose.Email. O código também segue um exemplo de uso da classe wrapper.