gpt4 book ai didi

clojure - 对 Clojure 代理的调用缓慢

转载 作者:行者123 更新时间:2023-12-02 10:34:44 24 4
gpt4 key购买 nike

我在 clojure 中有一个应用程序,它大量使用名为 Vaadin 的 Java 框架。 Vaadin 使用 clojure 的 Java“代理”功能来使用多个回调。然而,每次在 clojure 函数中调用代理时,都会出现明显的延迟(有时长达数百毫秒)。有什么办法可以加快速度吗?

最佳答案

我的理解是,新的 reify 宏比 proxy 更快。如果您只需要实现单个接口(interface),则可以使用它。

例如,如果您需要实现 java.awt.event.ActionListener,您可以使用如下代码:

(import 'java.awt.event.ActionListener 'javax.swing.JButton)
(let [a-button (JButton. "Click Me")]
(.addActionListener a-button
(reify ActionListener
(actionPerformed [this ev] (comment do something interesting)))))

关于clojure - 对 Clojure 代理的调用缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4469084/

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