Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
KILL WORKER
|
KILL WORKER {( processo )} | ||||||||
Parâmetro | Tipo | Descrição | ||||||
processo | Texto, Inteiro longo |
![]() |
Número ou nome de processo a terminar (terminar processo atual se omitido) | |||||
O comando KILL WORKER envia uma mensagem ao processo worker cujo nome ou número que passa em processo, pedindo ignorar as mensagens pendentes e por fim a sua execução logo que terminem as tarefas atuais.
Este comando só pode ser utilizado com os processos worker. Para saber mais, por favor consulte a seção Sobre Workers.
Em processo, se passa o nome ou o número do processo worker cuja execução deve ser terminado. Se não existir nenhum worker com o nome ou o número de processo especificado, KILL WORKER não faz nada.
Se não passar nenhum parâmetro, KILL WORKER aplica aos processos worker atualmente em execução e portanto é equivalente a KILL WORKER (Current process).
Se KILL WORKER for aplicado a um worker que não foi criado explícitamente utilizando o comando CALL WORKER (por exemplo, o proceso worker principal da aplicação), só pede a este trabalhador esvaziar sua caixa de mensagens. Em consequência, KILL WORKER (1) não faz nada.
Se chamar ao comando CALL WORKER para enviar uma mensagem a um worker que acaba de ser finalizado por KILL WORKER, um novo processo é iniciado. Para ter certeza de que só há um processo que se executa por vez para um trabalhador, o novo processo se iniciará assim que o anterior tenha finalizado. Entrentato, lembre que se CALL WORKER for chamado por um worker para ser enviada uma mensagem, enquanto acaba de ser eliminado por KILL WORKER, o comando não faz nada.
O comando abaixo (executado desde um formulário, por exemplo) dará lugar a terminaçao do trabajador:
CALL WORKER(vWorkerName;"theWorker";"end")
No método (theWorker), adicionou código para manejar esta situaçao:
//método theWorker
C_TEXT($1) //param
Case of
:($1="call") //se chama ao worker
... //fazer algo
:($1="end") // pede ao worker se suicidar
KILL WORKER
End case
Produto: 4D
Tema: Processos (Comunicações)
Número
1390
Criado por: 4D v15 R5
Manual de linguagem 4D ( 4D v20 R7)