使用 Clojure Cells 或 add-watcher 进行反应式程序?

发布于 2024-10-10 02:22:45 字数 108 浏览 8 评论 0原文

我想在我的 clojure 程序中使用大量反应式(数据流)类型编程技术。在 clojure refs 上使用“add-watcher”就足以做到这一点。一个简单的例子是当底层数据发生变化时更新 GUI。

I want to use alot of reactive (dataflow) type programming techniques in my clojure program. Is uses "add-watcher" on clojure refs going to be good enough to do this. A simple case for this would be to update the GUI when the underlying data changes.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦在夏天 2024-10-17 02:22:45

是的,这确实是个好主意。我在自己的代码中使用它来在流数据发生变化时更新 UI 元素。唯一需要注意的是,如果 atomref 的话,观察者会在 agent 的线程或主线程中同步调用> 或 var。所以为了避免阻塞线程,不要在watchers中做太多的处理。如果您需要这样做,请创建一个未来

Yes, that is indeed a good idea. I have used it in my own code to update UI elements when the streaming data changes. Only thing you need to be careful of is that, the watchers are called synchronously in the agent's thread or the main thread if atom, ref or var. So to avoid blocking the thread, don't do too much processing in the watchers. If you need to do so then create a future.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文