草庐IT

c# - 强制 C# 异步任务懒惰?

我有一种情况,我有一个由特殊工厂创建的对象树。这有点类似于DI容器,但又不完全是。对象的创建总是通过构造函数发生,并且对象是不可变的。在给定的执行中可能不需要对象树的某些部分,应该延迟创建。所以构造函数参数应该只是按需创建的工厂。这看起来像是Lazy的工作.但是,对象创建可能需要访问慢速资源,因此始终是异步的。(对象工厂的创建函数返回一个Task。)这意味着Lazy的创建函数。需要是异步的,因此注入(inject)的类型需要是Lazy>.但我宁愿不要双重包装。我想知道是否可以强制Task懒惰,即创建一个Task保证在等待之前不会执行。据我了解,Task.Run或Task.Factory

javascript - Chrome 的 JavaScript 控制台是否懒惰评估对象?

我将从代码开始:vars=["hi"];console.log(s);s[0]="bye";console.log(s);很简单吧?对此,Firefox控制台显示:["hi"]["bye"]很棒,但是Chrome的JavaScript控制台(7.0.517.41测试版)说:["bye"]["bye"]是我做错了什么,还是Chrome的JavaScript控制台在评估我的数组时格外懒惰? 最佳答案 感谢您的评论,tec。我能够找到一个现有的未确认的Webkit错误来解释这个问题:https://bugs.webkit.org/show

go - 如果您懒惰,可以快速添加新的 Bazel github 外部存储库吗?

我正在使用Bazel和gazelle来管理我的Go项目的BUILD.bazel文件。我希望跨语言保持一致并避免使用Go的特定vendor工具。我禁用了瞪羚的vendor。它为这些存储库生成BUILD条目非常好,但我坚持自己为git_repository或http_archive编写WORKSPACE咒语。如果我使用的项目有很多外部依赖项,这当然会变得乏味。有没有更方便的方法呢?gazelle是否支持更新WORKSPACE文件?谢谢。 最佳答案 回答我自己的问题:看起来Bazel团队希望将对此的支持添加到Gazelle但在此之前我们可

linux - Haskell:从/proc 读取。严格和懒惰的问题。过程统计

我在从/proc读取文件时有非常奇怪的行为如果我用prelude的readFile懒惰地读取/proc/pid/stat-它可以工作但不是我想要的方式。使用Data.ByteString.readFile切换到严格读取会给我一个空字符串。我这里需要严格的阅读才能在短时间内比较两次阅读的结果。所以使用System.IO.readFile读取/proc/pid/stat根本行不通。它在0.5秒的间隔内给了我相同的结果。我认为这是由于懒惰和半关闭handle或其他原因......打开和关闭文件句柄明确有效。h但是如果我们有字节串严格阅读,为什么还要这样做。对吧?这就是我卡住的地方。impor

android - 什么是懒惰列表?

我无法在任何真正可靠的来源中找到解释什么是LazyList。有人吗? 最佳答案 LazyList是使用url从sd卡或服务器延迟加载图像。就像按需加载图片一样。图像可以缓存到本地sd卡或手机内存中。URL被认为是关键。如果key存在于sd卡中,则从sd卡中显示图像,否则它会从服务器下载图像并将其缓存到您选择的位置。您可以设置缓存限制。您还可以选择自己的位置来缓存图像。缓存也可以清除。惰性列表无需用户等待下载大图像然后显示它们,而是按需加载图像。由于图像被缓存,您可以离线显示图像。https://github.com/thest1/L

c++ - 懒惰评估(短路)模板条件类型的通用方法

在玩弄编译时字符串(char的可变参数列表)操作时,我需要实现一种方法来检查编译时字符串是否包含另一个(较小的)编译时字符串。这是我的第一次尝试:templatestructContains;templatestructContains,CharList>{usingL1=CharList;usingL2=CharList;staticconstexprintsz1{L1::size};staticconstexprintsz2{L2::size};usingType=std::conditional=sz1),std::false_type,std::conditional()!=L

python - Django 形式的懒惰选择

我有一个这样的Djangomy_forms.py:classCarSearchForm(forms.Form):#lotsoffieldslikethisbodystyle=forms.ChoiceField(choices=bodystyle_choices())每个选择都是例如(“轿车”、“轿车(15辆)”)。所以选择是由这个函数计算出来的。defbodystyle_choices():return[(bodystyle.bodystyle_name,'%s(%scars)'%(bodystyle.bodystyle_name,bodystyle.car_set.count()))

python - Python 会懒惰地评估 if 的条件吗?

这个问题在这里已经有了答案:DoesPythonsupportshort-circuiting?(4个回答)关闭2年前.例如,如果我有以下语句:if(foo1orfoo2)......如果foo1为真,python会检查foo2的条件吗? 最佳答案 是的,Python懒惰地评估bool条件。docssay,Theexpressionxandyfirstevaluatesx;ifxisfalse,itsvalueisreturned;otherwise,yisevaluatedandtheresultingvalueisreturne

python - python中的枚举是懒惰的吗?

我想知道当我将生成器函数的结果传递给python的enumerate()时会发生什么。示例:defveryBigHello():i=0whilei枚举是懒惰地迭代,还是将所有内容都放入第一的?我99.999%确定它是惰性的,所以我可以将它与生成器函数完全相同,还是我需要注意什么? 最佳答案 懒惰。证明是这样的相当容易:>>>defabc():...letters=['a','b','c']...forletterinletters:...printletter...yieldletter...>>>numbered=enumerat

java - 为什么 flatMap() 之后的 filter() 在 Java 流中是 "not completely"懒惰的?

我有以下示例代码:System.out.println("Result:"+Stream.of(1,2,3).filter(i->{System.out.println(i);returntrue;}).findFirst().get());System.out.println("-----------");System.out.println("Result:"+Stream.of(1,2,3).flatMap(i->Stream.of(i-1,i,i+1)).flatMap(i->Stream.of(i-1,i,i+1)).filter(i->{System.out.println