🚀 StartJob [AS] – Execução de JOBs em Paralelo no Protheus
Descrição
StartJob [AS] – Faz com que a thread corrente deixe de ser executada de acordo com o valor informado como parâmetro.
|
Sintaxe
| StartJob( <cFuncao>, <cEnv>, <lWait>, <xParans> ) |
Parâmetros
| Par |
Nome |
Tipo |
Descrição |
Default |
Obg |
Ref |
| 01 |
cFuncao |
Caracter |
Nome da função/Job a ser executada |
|
X |
|
| 02 |
cEnv |
Caracter |
Ambiente em que o Job será executado |
|
X |
|
| 03 |
lWait |
Boolean |
Se verdadeiro (.T.), aguarda o retorno do JOB; se falso (.F.), o processo segue em paralelo |
|
X |
|
| 04 |
xParans |
Indefinido |
Parâmetros repassados ao JOB (máx. 25). Se for CodeBlock ou Object → será recebido como NIL. |
|
|
|
Retorno
| Retorno |
Tipo |
Descrição |
| lRet |
Boolean |
Se lWait = .T., retorna o valor da função executada; Se lWait = .F., retorna NIL. |
Exemplo
#INCLUDE "TOTVS.CH"
User Function StartJ()
StartJob("U_JOB", GetEnvServer(), .F., 'UniversoADVPL', 'ADVPL' )
Return( Nil )
User Function JOB( cMen1, cMen2 )
Conout( cMen1 + ' - ' + cMen2, 'UniversoADVPL' )
Return( Nil )
Resultado

Informações adicionais
Gostou? Compartilhe com seus amigos e deixe um comentário! 😎
#advpl #startjob #protheus #job #thread #processamento paralelo #totvs #universoadvpl #multithread #funcaoadvpl