gpt4 book ai didi

dart - 如何实现调用缓存(Memoization)

转载 作者:行者123 更新时间:2023-12-03 03:13:29 27 4
gpt4 key购买 nike

我想用元数据注释以非侵入性的方式实现调用缓存(内存)。

希望它会像这样工作:

class A{
@Cached
foo(msg) {
return msg;
}
}

void main() {
@Cached
var foo = ()=>"hello";
}

只用 dart:mirrors 就可以实现吗? ?

最佳答案

不久前,我写了一篇关于这个主题的完整博客文章。这里复制太长,所以这里是链接:

http://dartery.blogspot.com/2012/09/memoizing-functions-in-dart.html

结果是您可以编写高阶内存函数,但由于 Dart 缺乏灵活的 args 函数,它们在一般情况下受到限制。此外,如果您想使用带有递归函数的动态编程,您需要在编写函数时考虑到内存 - 它需要将自己作为参数,因此您可以传入内存版本。

关于dart - 如何实现调用缓存(Memoization),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24049063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com