Páginas filhas
  • totvs.framework.start.jobs.exclusiveAccess

Descrição:

Função utilizada para solicitar o acesso exclusivo aos jobs resilientes de behaviour e data sharing caso exista a necessidade de abertura da tabela SM0.


Importante

A função realiza o encerramento da thread do data sharing e possibilita aguardar o encerramento da thread de behaviour sharing em sua execução default.

Importante

A função não é executada por uma user function

Sintaxe:

totvs.framework.start.jobs.exclusiveAccess(lWait, lKillDataSharing, lKillBehaviourSharing, lExclusive, @lOpenSM0)

Parâmetros:  

NomeTipoDescriçãoDefaultObrigatórioObservação
lWaitLogicalIndica se irá aguardar a finalização dos jobs resiliente.T.

lKillDataSharingLogicalIndica se irá derrubar o job de data sharing.T.

lKillBehaviourSharingLogicalIndica se irá derrubar o job de behaviour sharing.F.
A utilização desse parâmetro é por conta e risco do utilizador, já que pode encerrar um processo que não possui um retry de descida de dados.
lExclusiveLogicalIndica que irá solicitar o acesso exclusivo ao SM0.T.
Caso não seja solicitado o acesso exclusivo o acesso compartilhado será utilizado para a verificação.
lOpenLogicalParâmetro enviado como referência para verificar se foi possível a abertura da SM0 de acordo com o parâmetro lExclusive
XO parâmetro somente será atualizado com o resultado de tentativa de abertura da SM0 quando o parâmetro lWait estiver em uso.


Código:

Exemplo
#include "protheus.ch"

function callExclusiveAccess()
    local lOpenSM0 as logical

    totvs.framework.start.jobs.exclusiveAccess(,,,,@lOpenSM0)
	// Processo após a solicitação do acesso para os jobs resilientes
    totvs.framework.start.jobs.startThreads() // Habilita a execução dos jobs resilientes
return

A função totvs.framework.start.jobs.startThreads() não possui parâmetros e é utilizada para avisar que os jobs resilientes já podem ser chamados novamente.

Caso a função totvs.framework.start.jobs.startThreads() não seja chamada após a finalização da execução isso é realizado automaticamente no próximo login no ambiente.