MemoizedFunction
Classe dos objetos retornados por memoize.
Categoria: Software Development Tools > Performance and Memory
Sintaxe
m = memoize(fun)
Cria um objeto da classe matlab.lang.MemoizedFunction em torno de fun.
m.Enabled = tf
Liga (true) ou desliga (false) o cache de m.
m.CacheSize = n
Define quantos resultados o cache mantém.
Descrição
Um objeto MemoizedFunction se comporta como o function handle que envolve: é chamado com os mesmos argumentos e devolve as mesmas saídas. Além disso, possui um cache. As propriedades Enabled, CacheSize e Function descrevem a configuração, stats informa acertos e falhas e clearCache esvazia o cache.
O objeto é um handle, então cópias da variável apontam para o mesmo cache.
Argumentos de entrada
Enabled- Propriedade lógica. Com
false, a função sempre é executada e nada é guardado. CacheSize- Número de conjuntos de entradas distintos cujos resultados são mantidos. Entradas antigas são descartadas ao exceder.
Argumentos de saída
Function- Handle somente leitura da função envolvida.
Exemplo
Propriedades de uma função memoizada
m = memoize(@(x) x^2);
class(m)
m.Enabled
m.CacheSize = 5;
m.CacheSize
m.Function
Saída
ans = 'matlab.lang.MemoizedFunction'
ans = logical
1
ans = 5
ans = function_handle with value:
@(x)x^2