SetRecursion
Define o número máximo de iterações para recorrências e loops em uma expressão.
Formato
SetRecursion ( expressão ; máxIterações )
Parâmetros
expressão
- qualquer expressão, campo ou constante de cálculo.
máxIterações
- o número máximo de iterações.
Tipo de dados retornado
texto, número, data, hora, carimbo de data/hora, container
Originada na versão
18.0
Descrição
Por padrão, a Função While e as funções personalizadas recursivas têm um limite de 50.000 iterações. Esta função permite aumentar ou diminuir o limite de máxIterações
. Se o valor de máxIterações
for excedido, a função retornará "?"; caso contrário, retornará o resultado da expressão
.
Notas
- As funções personalizadas que usam recursão sem cauda também estão sujeitas ao parâmetro
máxIterações
especificado por SetRecursion. No entanto, elas também encerrarão e retornarão "?" se o espaço da pilha disponível na memória ficar muito pequeno, independentemente de SetRecursion.
Exemplo 1
Retorna "?" porque o loop While tenta iterar mais vezes do que o limite de cinco vezes especificado por SetRecursion.
SetRecursion (
While (
[ i = 0 ; fora = "" ] ;
i ≤ 10 ;
[
i = i + 1 ;
fora = fora & $variável[ i ] & ¶
] ;
fora
) ;
5 )
Exemplo 2
Retorna 100000 porque SetRecursion aumenta o limite de iteração para 200000.
SetRecursion (
While (
i = 0 ;
i < 100000 ;
i = i + 1 ;
i
) ;
200000 )