Tenho problema semelhante.
Servidor de Curitiba.
Envio mais de 2000 NFs divididas em lotes de 50, em um único processo, lote a lote.
Esporadicamente (as vezes da problema ja no primeiro lote, as vezes la pelo décimo, enfim varia bastante) o sistema chama o método enviar da ACBRNFse e o sistema trava (não respondendo).
Verificando na prefeitura o lote SEMPRE é recebido e as notas estão la corretas, sem problemas.
Tentei tratar em um except, mas não cai na exceção, fica sem responder por muuuito tempo até o operador desistir e finalizar o executável pelo gerenciador de tarefas.
Quando acontece coloco no banco de dados os números do lote e rps de cada nota, (manualmente) em seguida fazemos o download do XML deste lote e o processamos, assim o processamos e o processo de envio pode seguir normalmente (pelo menos até a próxima travada)
Gostaria de poder tratar esta exceção, definir um timeout ja seria suficiente, pois assim poderia o próprio sistema casa caia no tratamento desta exceção gravar o rps e lote e seguir a transmissão.
Ao final do todo o envio relatar quais lotes falhou o retorno para baixar e processar o xml.
Não posso "testar" com a aplicação demonstração por 2 motivos: o primeiro ja expliquei aqui, é esporádico.. tenho q fazer muitos envios para que algum deles de problema (as vezes não rs..)
depois, aqui em Curitiba poucos conseguiram utilizar o sonhado ambiente de homologação e eu não fui um dos felizardos.
Alguém que teve problema semelhante sabe de uma forma correta para tratar isso? ou pelo menos provocar um timeout caso demore X tempo após o método enviar?