import.css=/download/attachments/6062824/tecnologia.css |
Retorna um array multidimensional com as informações de cada um do processos em execução no Protheus 8 Server e/ou Application Server.
GetUserInfoArray( [ lShowMoreInfo* ] ) |
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
lShowMoreInfo* | lógico | Se informado verdadeiro (.T.), retorna mais informações por thread (apenas 4GL/Telnet 4GL). |
|
|
Nome | Tipo | Descrição |
---|---|---|
aRet | vetor | Retorna um array multidimensional com os números e dados de cada uma das threads. |
Posição | Tipo | Descrição |
aInfo[x][01] | C | Nome de usuário |
aInfo[x][02] | C | Nome da máquina local |
aInfo[x][03] | N | ID da Thread |
aInfo[x][04] | C | Servidor (caso esteja usando Balance; caso contrário é vazio) |
aInfo[x][05] | C | Nome da função que está sendo executada |
aInfo[x][06] | C | Ambiente(Environment) que está sendo executado |
aInfo[x][07] | C | Data e hora da conexão |
aInfo[x][08] | C | Tempo em que a thread está ativa (formato hh:mm:ss) |
aInfo[x][09] | N | Número de instruções |
aInfo[x][10] | N | Número de instruções por segundo |
aInfo[x][11] | C | Observações |
aInfo[x][12] | N | (*) Memória consumida pelo processo atual, em bytes |
aInfo[x][13] | C | (**) SID - ID do processo em uso no TOPConnect/TOTVSDBAccess, caso utilizado |
aInfo[x][14] | N | (***)Identificador de processo do ctreeserver e/ou boundserver |
aInfo[x][15] | C | (***)Tipo da thread (JOB , WEB , WEBEX , TELNET , SmartClient Standard , Smartclient HTML, Smartclient ActiveX...) |
aInfo[x][16] | C | (***)Informação de tempo de inatividade de cada thread |
(*) Este elemento em builds anteriores, somente retornava caso o monitoramento de memória, do Application Server, estivesse habilitado na chave DebugThreadUsedMemory, da seção [General]. Nas builds atuais, a partir da 081215P, esta coluna sempre será retornada, mas caso o monitoramento de memória não esteja ativo, o valor sempre será -1 (menos um).
(**) Esta coluna será retornada, em builds superiores a 081215P. Caso o processo atual não tenha conexão com o TOPConnect/DBAccess ativo, esse elemento conterá uma string em branco.
(***) Estas 3 informações só estão disponíveis em builds superiores a 7.00.131227A.
user function exemplo() aInfo := GetUserInfoArray() // Resultado: (Informações dos processos) varinfo("Threads:",aInfo) Return |
User Function exemplo4gl() Local i aInfo := GetUserInfoArray(.F.) conout("GetUserInfoArray com parametro .F.") for i := 1 to Len(aInfo) conout("ThreadID:" + cvaltochar(aInfo[i][3]) + " Program:" + aInfo[i][5] + " Obs:" + aInfo[i][11]) next //Resultado: //[Thread 4920] GetUserInfoArray com parametro .F. //[Thread 4920] ThreadID:4920 Program:U_GINFARR Obs: //[Thread 4920] ThreadID:6392 Program:MAN0110.4GL Obs: //[Thread 4920] ThreadID:6428 Program:MEN1100 Obs: aInfo := GetUserInfoArray(.T.) conout("GetUserInfoArray com parametro .T.") for i := 1 to Len(aInfo) conout("ThreadID:" + cvaltochar(aInfo[i][3]) + " Program:" + aInfo[i][5] + " Obs:" + aInfo[i][11]) next //Resultado: //[Thread 4920] GetUserInfoArray com parametro .T. //[Thread 4920] ThreadID:4920 Program:U_GINFARR Obs: //[Thread 4920] ThreadID:6392 Program:MAN0110.4GL Obs:Parent=1 //[Thread 4920] ThreadID:6392 Program:RUN4GLPROCESS.4GL Obs:Parent=0 //[Thread 4920] ThreadID:6428 Program:MEN1100 Obs: Return |