Acacio 0 Denunciar post Postado Julho 2, 2013 Olá pessoal, boa tarde! gostaria de pedir a ajuda de vocês em um problema. Tenho uma rotina em um thread separado que fica em loop infinito por necessidade, porem quando existe o estouro de alguma exceção com raise Exception.Create('mensagem de erro'); o thread para, morre, ele fica como ativo, mas o loop morre como se pausasse, ja chamei o metodo Resume mas nada acontece. poderia me dar alguma orientação? ja procurei no google mas não encontrei nada nem aqui no Brasil nem fora do país. Alguém tem alguma ideia do que pode ser? Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Julho 3, 2013 Olá amigos. Amigo Acácio, não sei como está seu código, mas como é um loop infinito, se ao invés do Resume você usa-se: Raise Exception.Create(''); Continue; Internamente, não consegui detectar algo que faça um "abort" após criar a Exception. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Acacio 0 Denunciar post Postado Julho 3, 2013 Olá Eisenheim, veja como está o meu loop. procedure TThreadRetaguardaAuto.Execute; var tempo:Integer; begin tempo := 5; //5 segundos while not Self.Terminated do begin Sleep(tempo*1000); VerificarPendencias; end; end; se dentro da procedure "VerificarPendencias" alguma exceção estourar por quaisquer motivo o Thread morre. é como se ele pausasse e não consigo dar stop nem resume, ele fica praticamente morto. Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Julho 3, 2013 Olá amigo. Dentro da sua rotina VerificaPendencias não existe nenhuma situação que esteja utilizando a instrução Abort ou Exit ? Se você puder, compartilhe o conteúdo dessa rotina se não for muito grande também para eu analisar e tentar ver se consigo te ajudar. Caso não esteja, não sei se é o correto nessa situação, mas tente algo como: try VerificaPendencias; except end; Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites