Quando eu quero finalizar um processo via System Monitor, são apresentadas duas maneiras rápidas: Finalizar processo e finalizar processo. Qual é a diferença entre esses dois?
Quando eu quero finalizar um processo via System Monitor, são apresentadas duas maneiras rápidas: Finalizar processo e finalizar processo. Qual é a diferença entre esses dois?
Respostas:
De acordo com o manual do System Monitor, você normalmente deve usar "Finalizar processo" e, somente se isso falhar, "Kill Process":
Você normalmente encerra um processo apenas se não puder finalizá-lo normalmente, conforme descrito em Para finalizar um processo.
Em um nível técnico, isso me faz pensar que o Processo Final envia um SIGQUIT, que permite que o processo intercepte e execute a limpeza, se necessário, mas se isso falhar, o Kill Process deve enviar um SIGKILL que deve finalizar violentamente o processo, sem chance de recuperação. Use moderadamente!
Também fiquei curioso, então apenas naveguei pelo código-fonte e encontrei o abaixo em application.cpp . Há mais nesse código, mas acho que eles se correlacionam com as opções, pelo menos para o System Monitor 3.8.2.1 a 3.19.3:
Veja esta pergunta no Quora sobre os sinais SIGINT, SIGTERM, SIGKILL e SIGSTOP para obter uma boa explicação sobre todos os sinais de interrupção / interrupção / encerramento e suas diferenças.