Como Resolver o Erro Thread Priority no TOTVS AppServer

Tempo de leitura: 4 minutos

Tentar iniciar o TOTVS AppServer e ser barrado por uma mensagem de erro crítica é um cenário comum no dia a dia de um administrador de sistemas. Se o seu log apresenta a mensagem: “Thread Priority XX – Notified finalization for 2 live Threads”, você está diante de um conflito de recursos. Este erro indica que o servidor não conseguiu alocar os recursos necessários para subir, geralmente devido a um conflito de portas de comunicação.

 

Neste guia prático de Monitoramento e Troubleshooting, você aprenderá a identificar a causa raiz desse erro e como aplicar a correção definitiva no seu ambiente Protheus | Framework.


⚙️ Quer dominar o Protheus além do básico?
Aprenda como funciona o AppServer, DBAccess, licenças 
e toda a arquitetura do Protheus 

✔ Configurações reais de ambiente
✔ Soluções para erros críticos
✔ Boas práticas de infraestrutura  
🔐 Conteúdo direto ao ponto. Sem enrolação.

Erro Thread Priority XX – Notified finalization for 2 live Threads

 

O que causa o erro de Thread Priority no AppServer?

O TOTVS AppServer depende da exclusividade de portas específicas para operar, como a porta de RPC (Remote Procedure Call), portas de SmartClient HTML e serviços REST.

 

Quando você tenta subir o serviço e recebe o erro de finalização de threads, o motivo mais provável é que as portas definidas no seu AppServer.ini já estão ocupadas por outro processo. Isso pode acontecer por:

  1. Uma instância antiga do AppServer que “travou” e não liberou a porta.
  2. Outro serviço (como o TSS ou um servidor Web) utilizando a mesma porta.
  3. Conflitos de configuração após atualizações de binários.

✅ Como Solucionar: Passo a Passo

A correção do erro envolve identificar o processo que está usando as portas e encerrá-lo, ou simplesmente alterar as portas no arquivo de configuração.

 

1. Identificar o Processo Ocupando a Porta

O passo mais eficaz é descobrir quem está usando a porta principal do AppServer (geralmente a porta RPC, como 12345 ou 1234).

  • Abra o Prompt de Comando (CMD) como Administrador.

  • Execute o comando (substitua [SUA_PORTA] pela porta principal do seu AppServer, ex: 12345):

 

netstat -ano | findstr :[SUA_PORTA]

Executando o comando netstat -ano | findstr :[SUA_PORTA] no CMD

 

  • O resultado mostrará o PID (Process ID) do processo que está na escuta (LISTENING) naquela porta.

  • Exemplo: Se o resultado for TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 5444, o PID é 5444.


 

  • Para verificar qual é o executável (EXE) com esse PID 5444, use:

tasklist /svc | findstr 5444


Ao executarmos o comando acima podemos ver o programa que estava usando a porta 1025, no caso o TSS, ou seja, era o TSS que estava impedindo do TOTVS AppServer subir:

2. Alterar as Portas (Alternativa)

Se o processo em uso for essencial e não puder ser encerrado (o que é raro, mas possível), ou se você preferir uma solução permanente para evitar conflitos futuros, altere as portas de comunicação.

  • Edite o arquivo AppServer.ini.

  • Na seção principal, altere as portas Port (RPC) e, se necessário, as portas de HTTP e HTTPS (serviços REST).

No caso como eu estava usando a porta 1025 na seção [WebApp] do appserver.ini eu modei a porta para 10250 e assim evitar conflito com o TSS:

[WebApp]
Port=10250


  • Salve o arquivo e tente iniciar o AppServer novamente.
Alteração da porta da seção [WebApp] do appserver.ini

3. Encerrar o Processo Invasor (ou Antigo AppServer)

  • Se o processo for uma instância antiga ou “fantasma” do AppServer.exe, você deve encerrá-lo.

  • Abra o Gerenciador de Tarefas e localize o processo pelo PID (na aba “Detalhes”).

  • Clique com o botão direito e selecione Finalizar Tarefa ou Finalizar Árvore de Processos.

 


 

  • Como alternativa via CMD, use o comando e subtituia o PID pelo PID do programa que estar interferindo no TOTVS AppServer:

taskkill /PID [PID] /F

 


Para o nosso exemplo o comando seria:

taskkill /PID 5444 /F

Se o problema persistir após verificar as portas, talvez seja um erro de configuração mais complexo!

Ficou com alguma dúvida sobre a configuração do seu AppServer.ini ou o erro deThread Priority? Deixe um comentário abaixo!

Domine a Infraestrutura do Protheus

Para dominar este conceito em cenários complexos, como a gestão de múltiplos ambientes, balanceamento de carga (Load Balance) e otimização de performance do AppServer, conheça o Portal ProtheusAdvpl. Lá, exploramos a fundo a arquitetura do Protheus e as melhores práticas de infraestrutura.

 

Cursos Recomendados para Framework:

 

 

Conclusão

Resolver o erro de Thread Priority no Protheus é uma questão de gestão de recursos de rede. Ao utilizar os comandos netstat e tasklist, você ganha visibilidade total sobre o que está acontecendo no servidor, permitindo uma correção rápida e precisa. Manter o Log do AppServer limpo e configurado corretamente é o primeiro passo para um ambiente estável.

 

Se você gostou deste guia, confira também nosso artigo sobre Como Derrubar Usuário Travado no Protheus.

 

Links de referência(s):

 

Conteúdos relacionados

 
⚙️ Quer dominar o Protheus além do básico?
Aprenda como funciona o AppServer, DBAccess, licenças 
e toda a arquitetura do Protheus 

✔ Configurações reais de ambiente
✔ Soluções para erros críticos
✔ Boas práticas de infraestrutura  
🔐 Conteúdo direto ao ponto. Sem enrolação.

 

🚀 Quer dominar o Protheus de verdade?
Entre para o ProtheusAdvpl e receba conteúdos exclusivos sobre desenvolvimento, infraestrutura, módulos e carreira no Protheus

✔ Conteúdos organizados por categorias (Programação, Framework, Backoffice e RH)
✔ Dicas práticas usadas no dia a dia do Protheus
✔ Acesso a materiais, post e atualizações do Blog
🔐 Seu email está seguro. Sem spam. Só conteúdo profissional.