草庐IT

async_service

全部标签

c# - 缓存来自 [n async] 工厂方法的结果,前提是它不抛出

更新:在@usr指出我错误地假设Lazy后进行了大量修改的默认线程安全模式是LazyThreadSafetyMode.PublicationOnly...我想通过async延迟计算一个值工厂方法(即它返回Task)并在成功时将其缓存。在异常(exception)情况下,我希望我可以使用它。然而,我不想成为theexceptioncachingbehavior的牺牲品。那Lazy处于默认模式(LazyThreadSafetyMode.ExecutionAndPublication)Exceptioncaching:Whenyouusefactorymethods,exceptionsar

c# - Microsoft.Bcl.Async 是如何工作的?

Microsoft.Bcl.Async使开发人员能够在没有.NETFramework4.5的情况下使用async/await关键字,他们应该以使用它们为目标。太好了,这要感谢MicrosoftCLR和语言团队的人们的辛勤工作。现在我很好奇这是如何工作的。async/await要求编译器做一些繁重的工作,将代码转换成可以执行await操作的东西。编译器最初会在.NETFramework4.0下抛出编译错误,即使它清楚地知道async/await的含义(VisualStudio2012/2013。)那么这个库如何告诉编译器不要抛出与异步操作相关的特定编译错误,并像在.NETFramewor

c# - Haskell 相当于 C# 5 async/await

我刚刚阅读了有关使用await在C#5.0中处理异步函数的新方法。和async关键字。来自C#referenceonawait的示例:privateasyncTaskSumPageSizesAsync(){//TousetheHttpClienttypeindesktopapps,youmustincludeausingdirectiveandadda//referencefortheSystem.Net.Httpnamespace.HttpClientclient=newHttpClient();//...TaskgetContentsTask=client.GetByteArray

c# - CurrentCulture with async/await,自定义同步上下文

我有一个Web应用程序,我通过async/await使用了很多异步操作。一切正常,但当我创建自定义任务以并行运行多个任务时,我注意到,在此任务中,当前文化在等待后发生了变化。问题似乎是,线程池使用操作系统的文化,这与请求的文化不同,默认同步不会更新文化,即使在任务中更改当前线程的文化。所以我创建了一个自定义同步上下文:publicsealedclassCulturePreservingSynchronizationContext:SynchronizationContext{privateCultureInfoculture;privateCultureInfocultureUI;pu

c# - Service Fabric 包含其他文件

我有一个包含以下内容的VisualStudios解决方案:ServiceFabric项目无状态服务项目无状态服务项目使用基于配置的依赖注入(inject),这意味着依赖与项目本身松散耦合,而不是实际的VS“项目/编译依赖”。我想继续使用VisualStudios,但是当我部署这个项目时,它不知道程序集依赖项(因为这些仅在DI配置中定义),因此它没有打包必要的文件和抛出异常试图执行依赖注入(inject)。在ApplicationManifest.xml文件或VisualStudios提供的其他许多XML文件之一中,我可以指定其他文件(即我的依赖程序集)作为部署的一部分发布到Servic

c# - ASP.NET MVC3 : Set custom IServiceProvider in ValidationContext so validators can resolve services

2012年12月18日更新由于这个问题似乎有很多观点,我应该指出,接受的答案不是我使用的解决方案,但它确实提供了构建解决方案的链接和资源,但是,对我来说请注意,这不是理想的解决方案。我的回答包含MVC框架标准部分的替换;并且您应该只在您愿意检查它们是否仍适用于future版本时才使用它们(一些私有(private)代码已从官方来源中删除,因为基类中没有足够的可扩展性)。不过,我可以确认这两个类也适用于Asp.NetMVC4和3。也可以为Asp.NetWebAPI框架重复类似的实现,这是我最近完成的。结束更新我的类型有很多“标准”验证(必需等),但也有一些自定义验证。某些验证需要获取服务

c# - 我在哪里可以在 xamarin 应用程序中添加 google-services.json

您好,我们正在开发Xamarin应用程序,我们希望通过我们的推荐ID监控有多少人安装了应用程序。我找到了这份文件https://developers.google.com/analytics/devguides/collection/android/v4/其中显示“将刚刚下载的google-services.json文件复制到AndroidStudio项目的app/或mobile/目录中。”。我有visualstudio(2013)项目,其中当然缺少这些文件夹。问题是,我在visualstudio项目中的什么地方添加了google-services.json文件?提前致谢

c# - "Service X has zero application endpoints"除非我在代码中添加端点 - 为什么?

我关注了thisMSDNarticle彻底创建托管在托管NT服务中的WCF服务。当我在服务控制台中单击“开始”时,我会在事件查看器中看到以下内容:Servicecannotbestarted.System.InvalidOperationException:Service'MyServiceNamespace.RequestProcessorImpl'haszeroapplication(non-infrastructure)endpoints.Thismightbebecausenoconfigurationfilewasfoundforyourapplication,orbecau

c# - 在 TPL 数据流中使用 async/await 和 yield return

我正在尝试使用TPLDataflow实现数据处理管道.但是,我对数据流比较陌生,并不完全确定如何正确使用它来解决我要解决的问题。问题:我正在尝试遍历文件列表并处理每个文件以读取一些数据,然后进一步处理该数据。每个文件大概是700MB至1GB在尺寸方面。每个文件包含JSON数据。为了并行处理这些文件而不是运行内存,我正在尝试使用IEnumerable与yieldreturn然后进一步处理数据。获得文件列表后,我想同时处理最多4-5个文件。我的困惑来自:如何使用IEnumerable和yeildreturn与async/await和数据流。偶遇thisanswer通过svick,但仍然不确

c# - 如何: Use async methods with LINQ custom extension method

我有一个LINQ自定义扩展方法:publicstaticIEnumerableDistinctBy(thisIEnumerableitems,Funcproperty){returnitems.GroupBy(property).Select(x=>x.First());}我是这样使用它的:varspc=context.pcs.DistinctBy(w=>w.province).Select(w=>new{abc=w}).ToList();但问题是我不想要ToList()我想要这样的东西varspc=awaitcontext.pcs.DistinctBy(w=>w.province).