问题标签 [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 投票
4 回答
4844 浏览

c# - 如何维护 LINQ 延迟执行?

假设我有一个IQueryable<T>表达式,我想封装它的定义、存储它并重用它,或者稍后将它嵌入到更大的查询中。例如:

现在我相信我可以保留那个 myQuery 对象并像我描述的那样使用它。但有些事情我不确定:

  1. 如何最好地对其进行参数化?最初我在一个方法中定义了这个,然后返回了IQueryable<T>作为方法的结果。这样我可以将blahand定义bar为方法参数,我猜它IQueryable<T>每次都会创建一个新参数。这是封装逻辑的最佳方式IQueryable<T>吗?还有其他方法吗?

  2. 如果我的查询解析为标量而不是IQueryable怎么办? 例如,如果我希望这个查询与显示的完全一样,但追加.Any()只是让我知道是否有任何匹配的结果?如果我添加(...).Any()然后结果是bool并立即执行,对吗?有没有办法在不立即执行的情况下利用这些Queryable运算符(Any,SindleOrDefault等)?LINQ-to-SQL 如何处理这个问题?

编辑:第 2 部分实际上更多是关于尝试了解IQueryable<T>.Where(Expression<Func<T, bool>>)IQueryable<T>.Any(Expression<Func<T, bool>>). 在创建要延迟执行的较大查询时,后者似乎不那么灵活。Where()可以附加,然后可以稍后附加其他构造,然后最终执行。由于Any()返回一个标量值,听起来它会在构建查询的其余部分之前立即执行。

0 投票
6 回答
9504 浏览

c# - C# 中的延迟执行

如何在 C# 中实现自己的延迟执行机制?

所以例如我有:

是否可以执行一些魔术,以便在我“使用”x 之前 DoFoo 不会执行?

0 投票
2 回答
1000 浏览

javascript - 优先考虑 JavaScript 脚本:延迟不起作用

我需要优先考虑脚本,以便 jQuery、Cufon 和我的 .js 文件排在 Twitter 之前。我已经尝试defer="defer"按照我希望它们执行的顺序将脚本放在底部,但是所有这些方法都不起作用。

我也不想修改 Twitter 的文件。有什么我能做的吗?

0 投票
1 回答
755 浏览

python - 使用 Google App Engine 链接延迟任务

我有一个网站,我希望保持更新并每天从那里抓取一些内容。我知道该站点是在某个时间手动更新的,并且我已经设置了 cron 时间表来反映这一点,但是由于它是手动更新的,它可能会在 10 分钟甚至 20 分钟后进行。

现在我每 5 分钟有一个 hack-ish cron 更新,但我想使用延迟库以更精确的方式做事。我正在尝试链接延迟的任务,这样我就可以检查是否有更新,如果没有更新,则将相同的更新推迟几分钟,如果需要,再次推迟,直到最终有更新。

我有一些我认为可以工作的代码,但它只会推迟一次,而我需要继续推迟直到有更新:

(我正在使用 Python)

这显然只是一个简化的摘录。
我认为这很简单,但也许我完全错了?

0 投票
3 回答
1472 浏览

python - 如何从 Twisted 中推迟 Django DB 操作?

我有一个正常的 Django 站点正在运行。此外,还有另一个扭曲的过程,它监听 Jabber 存在通知并使用 Django 的 ORM 更新 Django DB。

到目前为止,我只是调用了相应的 Django 模型(在正确设置了设置环境之后)。然而,这会阻止 Twisted 应用程序,这不是我想要的。

由于我是新手,我不知道,最好的方法是使用延迟以非阻塞方式访问 Django DB(通过其 ORM)。

  1. 延迟生成器?
  2. twisted.enterprise.adbapi ?(绕过ORM?)
  3. ???

如果解析存在消息,我想在 Django DB 中保存具有 jid_str 的用户在线/离线(使用 Django 模型UserProfile)。我用那个功能来做:

目前,我调用它:

0 投票
2 回答
381 浏览

.net - Persistence of deferred execution linq expressions

We're trying to serialize some data, and one of the items in a collection is a "deferred execution linq statement" (actually it's the result of a Concat call on a collection).

The problem is how to persist that object. It doesn't support ISerializable. The actual type is something along the lines of System.Linq.Enumerable.WhereSelectListIterator<>

Just wondering if anyone had run into this before, and what the solution was.

0 投票
1 回答
477 浏览

javascript - 我可以使用哪些方法来重新排列 javascript 函数的执行顺序?

如何重新排列独立于包含顺序的 javascript 函数执行顺序。

一个有帮助但不能完全回答我的问题的问题: 你可以有多个 $(document).ready(function() 部分吗?(答案是肯定的,它们按照添加到 jQuery.ready 的顺序执行())。

为了方便通知目的,我正在尝试在我的 BBG ninjawars.net上让我的 javascript 登录/未登录。我希望使用一个简单的系统,让服务器端 phpsetLoggedIn()在页面登录时写出一个 javascript 函数调用,并在注销时写出一个对clearLoggedIn()正在查看页面的调用:

问题:

目前,订单为:

  • 全局定义 setLoggedIn() 和 clearLoggedIn() (在 nw.js 中)

  • 添加页面/信息修改代码,我们称之为 modifyPageLayout() 需要通知登录/注销到 jQuery.ready() (在 nw.js 中)

  • 在页面上的脚本标记中内联调用 setLoggedIn() 或 clearLoggedIn()。

我不知道如何确保 setLoggedIn() 或 clearLoggedIn() 的调用发生在 modifyPageLayout() 之前,它当前包装在 jQuery.ready() 块中,因此只要加载 DOM 就会运行。

  • 如果我将 setLoggedIn() 和 clearLoggedIn() 添加到 jQuery.ready() 块中,它们将按添加的顺序执行,因此顺序将变为: modifyPageLayout(),那么setLoggedIn()jQuery.ready setLoggedOut()() 块中的所有内容都不会完成意图。

  • setLoggedIn() 和 clearLoggedIn() 目前依赖于代码定义的 nw.js,所以在包含 nw.js 之前我不能调用它们。

一种可能的解决方案:

我可以通过将 modifyPageLayout 函数编写为:

有人有其他解决方案吗?

0 投票
1 回答
1030 浏览

c# - C#、NUnit:如何处理异常测试和延迟执行

假设我们有一个看起来像这样的方法:

如果我这样做测试:

测试将失败,说它

预期:<System.ArgumentNullException>
但是是: null

我可以通过将测试更改为

这就是你通常的做法吗?或者有没有更好的方法来编写测试?或者也许是编写方法本身的更好方法?


尝试对内置Select方法做同样的事情,即使没有 aToArray或类似的东西它也失败了,所以显然你可以做些什么......我只是不知道是什么:p

0 投票
1 回答
144 浏览

linq-to-sql - 添加部分类属性会破坏延迟执行吗?

如果我将属性添加到 linq 实体(例如员工)上,它只是引用其他属性来实现接口,返回一个 IQueryable,并且 where 子句提到那些仅指向其他 linq 实体属性的添加属性,是否会导致要在内存中而不是在 sql server 中加载和过滤整个表?

我的数据库使用小写字段,linq to sql 将其拉入并希望在实体上使用小写属性,我使用 resharper 并且更喜欢坚持 UpperCamelCase 的公共属性约定。

0 投票
1 回答
115 浏览

entity-framework - 解析 SL4 RIA 中的关联对象

在 VS2010 中创建标准 Silverlight 业务应用程序并从 SQL Server 数据库设置模型后,我有各种实体和关联,其中 AssetGroup 和 Asset 处于 1:m 关系。

据称,我可以使用点表示法从资产实例中获取关联的 AssetGroup。通过延迟执行和延迟加载的现代奇迹,我确信,我的数据将在我需要它的那一刻交付。

但它不起作用。

需要什么咒语,我必须杀死一只鸡还是一只山羊?

看起来很有希望。等我试过了我会更新的。