问题标签 [deferred-execution]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
175 浏览

php - 没有 CRON 或 Shell 的队列函数

我正在使用 Symfony 开发一个系统,其中集成了一个通知模块。该脚本的目的是允许广泛的兼容性,因此这些要求将使 cron、root 和 shell 成为问题。

目前,系统会在执行特定操作时发送通知。例如,发帖、上传文件、更改状态等。这种方法的问题在于,如果有大量用户订阅通知,它可能会导致某些操作非常缓慢。

我的问题是 - 是否有任何解决方案可以让我将此通知任务排队并推迟到执行操作之后?从而消除了与大型电子邮件任务相关的任何延迟。

提前感谢您的帮助 - 非常感谢!

0 投票
4 回答
934 浏览

c# - 是否可以确定一个 IEnumerable延迟执行有待处理吗?

我有一个接受 Enumerable 的函数。我需要确保对枚举数进行评估,但如果它在 List 或其他一些“冻结”集合中准备就绪,我宁愿不创建它的副本(例如通过 ToList() 或 ToArray())。Frozen 是指已经建立项目集的集合,例如 List、Array、FsharpSet、Collection 等,而不是像 Select() 和 where() 这样的 linq 东西。

是否可以创建一个函数“ForceEvaluation”来确定可枚举是否已延迟执行待处理,然后评估可枚举?

}

经过更多研究后,我意识到这在任何实际意义上几乎是不可能的,并且需要对每个迭代器进行复杂的代码检查。

因此,我将采用 Mark 答案的变体,并创建一个已知安全类型的白名单,然后调用 ToList() 任何不在白名单上的东西。

感谢大家的帮助。

编辑* 经过更多思考,我意识到这相当于停机问题。所以非常不可能。

0 投票
1 回答
1013 浏览

iqueryable - ASP.NET Web API 方法返回 IQueryable 是否有意义?

我正在开发一个使用新 Web API 的项目,我注意到有人正在从 Get 方法返回一个 IQueryable<T>。

我的理解是 IQueryable 对于提高性能(延迟执行)很有用,但我认为 HTTP 连接另一端的客户端无法利用这一点。

我的直觉告诉我这应该是 IEnumberable<T> 而不是。我是对的吗?

0 投票
1 回答
583 浏览

entity-framework-4 - 延迟加载的 ICollection 上的实体框架和延迟执行

我正在使用 Entity Framework 4.1,并且我有一对多的关系。

ICollection<T>当我查询关系一侧的延迟加载时,会返回整个记录集,并且它不会像我直接从存储库IQueryable接口查询时那样延迟执行。

有什么办法可以让这个使用延迟执行,所以我可以做一个像这样的查询

提前致谢,

汤姆。

0 投票
3 回答
84 浏览

c# - 遍历 Where'd 集合

我认为这是一个延迟执行问题,但也许我有点错过了重点

因此我有一个循环

我觉得这很危险,但实际上延迟执行是否使这项工作有效?它实际上似乎在迭代我有点温和地说'如预期'但是..问题是我想这大概是一个坏主意,通常弄乱你正在迭代的集合是坏的..

想法?谢谢

确定清楚..问题是

说桌子是这样填充的

1,真 2,假 3,假 4,假 5,假 6,假

第一圈我在 tbl1 中得到 {1,true} 并在第二圈中将 2 添加到已处理列表中我将在 tbl1 中得到 {3,false} 然后将 3 和 4 添加到已处理的第 3 圈中我将得到 {5, tbl1 中的 false} 这是预期的吗?

如果我在第 4 圈将 6 添加到已处理,我会在下一次再次获得 {5,false} 吗?这又是预期的,我想我只是觉得这有点令人困惑并觉得它很危险,但可能这只是为了我 - 因为它并不完全有意义

n

0 投票
2 回答
18632 浏览

javascript - 将 defer 属性添加到 javascript_include_tag Rails

有没有办法使用Railsdefer中的帮助程序轻松添加属性?javascript_include_tag

即,是否有一些简单的方法可以转动

<%= javascript_include_tag "blah.js" %>

进入

<script defer src="blah.js"></script>

0 投票
1 回答
208 浏览

c# - MessageBox.Show 和延迟/延迟更新

对不起,我不知道如何命名这个问题。

我已经为这个错误写了大约 10 次解释,然后删除它,因为它不清楚 - 原谅我,我直接跳到代码中,然后会解释

我已经逐步完成了这段代码(Visual Studio 中的 F11),当它到达该行时 disOp.Status.ToString(),下一个 F11 会按预期跳转到下一行。

但是,当我到达线路MessageBox.Show(disOp.Status.ToString());并按 F11 时,它会跳转到我的 DispatcherOperation 委托。

我的问题是为什么当我使用 Messagebox 控件而不是字符串时会发生这种情况!?

(这实际上是我需要的确切行为,但我不希望出现消息框,因为用户必须单击确定/取消......我还能如何复制这个?)

谢谢

戴夫

0 投票
3 回答
4265 浏览

python - 在 Python 中使用 lambda 进行延迟评估

在一个循环中,我试图将两个节点的两个 value() 的比较推迟到以后。

结果都是 True (因为 i,j==2,5 对于所有 lambdas)。如何推迟 lambda 的执行,直到它被实际调用,但使用正确的变量绑定?并且 lambda 中的表达式不一定都是相等的……还有很多其他更复杂的表达式。

谢谢你的帮助!

0 投票
1 回答
327 浏览

apache-flex - 在 Flex 中延迟渲染视口之外的组件

我正在寻找一些关于快速显示我们的报告的建议。我正在处理的问题是我收到了一个定义我们布局的 XML 数据结构。报告可以是 2 到 3 页,也可以是 20 到 30 页。因此,为了使报告尽快显示,我只想呈现报告的可见部分。以下是我需要克服的问题,我正在寻找一些如何实现这一点的建议。

为了获得更好的可视化效果,可以把它想象成一个 word 文档。报告有部分,我希望能够让它们尽快显示。

1) 当然,我不知道要添加的子组件的高度。是否有任何技术可以确定我添加的组件是否不包含在视口中,我是否可以触发滚动条移动。

2)我正在考虑向子组件添加估计,然后使用它来设置父容器的高度。然后当我收到滚动条移动事件时,我会检查子组件是否已添加到父组件,如果没有添加它们。无论如何都可以在不渲染组件的情况下获得组件的高度?

3) Flex 是否支持任何内置的东西来实现这一点。

欢迎任何其他技术。基本上,我希望尽快将报告显示给用户,并延迟渲染不在屏幕上的组件。

任何建议都会受到欢迎。提前致谢。

添加信息。
很难提供代码,因为我还没有编码。让我尝试扩展一些细节。我有一个父容器,我在其中获取一些 XML,并使用 XML 根据 XML 中的信息创建子组件。现在,当我们这样做时,可能需要很长时间才能呈现长报告。我想要做的是通过延迟这些子对象的渲染来减少渲染时间。我研究了诸如创建策略和 createDeferredContent 之类的东西,但不确定这是否是正确的方法。猜猜我需要解决的一般问题是,一旦您在父视口之外,如何停止渲染对象。我想要的是一个类似功能的项目渲染器,但孩子之间没有相似之处。也许一张图片可能有用(一旦我达到 10 分就会添加)?

图片显示了我要解释的内容

0 投票
2 回答
296 浏览

python - 为什么 Django 中没有 response_finished 信号?

我正在尝试在 Django 中实现某种后台任务队列,因为 Celery 太大太复杂,然后我突然想到,已经有一个信号叫做request_finished

https://docs.djangoproject.com/en/dev/ref/signals/#django.core.signals.request_finished

但是为什么 Django 没有一个叫做 的信号response_finished呢?

Django可能是同步的,但我可以做一些响应后数据处理和保存任务,它只需要多走几步。

黑客是否可以在 Django 中进行一些响应后工作?

TIA