Terminando a aplicação no modo Standalone

Ao contrário do Windows VCL no Linux, não existe um painel de controle visual para encerrar o servidor de aplicação. Em vez disso, você pode usar um dos métodos a seguir.

Encerramento forçado (não recomendado)

  • Se estiver executando em modo de depuração: pressione CTRL+F2 ou escolha Program Reset no menu Run da IDE. Isso encerra o aplicativo de forma forçada e não permite que procedimentos de limpeza sejam executados.

  • Use ferramentas do Linux para finalizar o processo:

    • Use o System Monitor para localizar e finalizar o processo. clip0191

    • Use a linha de comando do Linux kill para encerrar o processo.

Encerre o servidor normalmente (recomendado)

Para permitir que o servidor seja encerrado normalmente (para que os procedimentos de limpeza sejam executados), ative a opção soTerminateOnSession para que o servidor pare automaticamente quando a última sessão for fechada. Para ativar isso, siga os passos abaixo.

1

Ative a opção no ServerModule

No componente ServerModule, habilite a soTerminateOnSession opção.

clip0192

Isso faz com que o aplicativo seja encerrado quando todas as sessões forem terminadas (ou seja, quando a última sessão for fechada). Isso simplifica a depuração porque você pode apenas fechar as sessões ativas em vez de encerrar o servidor manualmente.

2

Ative a opção no código (opcional)

Você pode habilitar a opção programaticamente no seu UniGUIServerModuleBeforeInit evento. Exemplo:

ServerModule.pas
procedure TUniServerModule.UniGUIServerModuleBeforeInit(Sender: TObject);
begin
  .
  .
  .
  {$ifdef DEBUG}
  Options := Options + [soTerminateOnSession]; // encerra o app server quando todas as sessões forem fechadas. Apenas para modo de depuração
  {$endif}
end;

Neste exemplo a opção é habilitada somente quando compilada em modo DEBUG, portanto permanecerá desabilitada em builds RELEASE para produção.

3

Encerramento remoto via Server Monitor

Você também pode desligar um aplicativo standalone Linux64 remotamente a partir do Server Monitor:

  • No Server Monitor use o menu Manage -> Shutdown Server. Esta opção está disponível apenas para aplicações standalone Linux64. Selecioná-la encerrará o aplicativo uniGUI server.

clip0218
circle-exclamation

Observação: A soTerminateOnSession opção não é específica do Linux — pode ser usada em todas as plataformas suportadas.