草庐IT

tpl-dataflow

全部标签

php - 如何在 smarty .tpl 文件中调用 php 函数?

您好,我在.php文件中编写了一个函数。即publicstaticfunctiongetCategories($id_lang=false,$active=true,$order=true,$sql_filter='',$sql_sort='',$sql_limit=''){if(!Validate::isBool($active))die(Tools::displayError());$result=Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS('SELECT*FROM`'._DB_PREFIX_.'category`cLEFTJOIN`

google-cloud-dataflow - 如何以编程方式取消运行时间过长的 Dataflow 作业?

我正在通过PythonAPI在Dataflow上使用ApacheBeam从Bigquery读取数据,对其进行处理,然后将其转储到Datastore接收器中。不幸的是,作业经常会无限期地挂起,我必须手动停止它。当数据写入Datastore和Redis时,从Dataflow图中我注意到只有几个条目卡住并导致作业挂起。因此,当有15台16核机器的作业运行9小时(正常情况下,作业运行30分钟)时,会导致巨大的成本。也许有一种方法可以设置一个计时器,如果超过时间限制,该计时器会停止Dataflow作业? 最佳答案 如果你能创建一个custom

ios - TPL 任务运行时如何显示 iOS 网络指示器?

在与服务器API通信时,我大量使用任务并行库。我想在这些任务中的任何一个当前运行时显示iOS网络指示器。我该怎么做? 最佳答案 我创建了这个类来将NetworkActivityIndi​​catorVisible包装到一对进入/离开方法中。publicstaticclassNetworkIndicator{staticint_counter;publicstaticvoidEnterActivity(){Interlocked.Increment(ref_counter);RefreshIndicator();}publicstat

c# - 使用 TPL 的协作式多任务处理

我们正在移植建模应用程序,它使用IronPython脚本在建模过程中执行自定义操作。现有应用程序在单独的线程中执行每个Python脚本,并为此使用协作模型。现在我们想把它移植到TPL,但首先我们想测量上下文切换.基本上,我们现在拥有的是:任务的队列此队列中的每个Task执行一个IronPython脚本在IronPython脚本中我们调用C#类方法,这是同步点,应该将Task(IronPython执行)转移到等待状态我们想做的:我们想要无限循环,它将遍历Task的队列当我们得到一个任务时,我们尝试执行它在PythonScript中,我们要调用C#方法并将此脚本转移到等待状态。但不将其从队

c# - 为什么这个 TAP 异步/等待代码比 TPL 版本慢?

我必须编写一个调用MicrosoftDynamicsCRMWeb服务的控制台应用程序来对八千多个CRM对象执行操作。Web服务调用的细节无关紧要,此处未显示,但我需要一个多线程客户端,以便我可以并行调用。我希望能够控制配置设置中使用的线程数量,并且如果服务错误数量达到配置定义的阈值,应用程序也可以取消整个操作。我使用任务并行库Task.Run和ContinueWith编写它,跟踪正在进行的调用(线程)数量、我们收到的错误数量以及用户是否已从键盘取消。一切正常,我进行了大量的日志记录,以确保线程干净利落地完成,并且在运行结束时一切都井井有条。我可以看到该程序正在使用最大并行线程数,如果达

c# - System.Threading.Tasks.Dataflow 和 Microsoft.Tpl.Dataflow 之间有什么区别

有2个不同的官方TPL数据流nuget包。我很困惑选择我应该使用哪个。据我了解,System.Threading.Tasks.Dataflow版本比其他版本稍新,而且System.Threading.Tasks.Dataflow似乎是针对最新版本的.net。谁能解释一下它们之间的区别? 最佳答案 Microsoft.Tpl.Dataflow最初作为.net4.5的一部分作为独立于BCL的组件发布-这里是blogpostannouncingthereleaseSystem.Threading.Tasks.Dataflow作为一个单独的

c# - 如何使用 TPL 和 TaskScheduler 编写单元测试

想象这样一个函数:privatestaticConcurrentListlist=newConcurrentList();publicvoidAdd(objectx){Task.Factory.StartNew(()=>{list.Add(x);}}我不关心什么时候fentry被添加到列表中,但我需要它被添加到最后(显然;))我看不出有什么方法可以在不返回任何回调处理程序或其他东西的情况下正确地对这样的东西进行单元测试。并因此添加程序不需要的逻辑你会怎么做? 最佳答案 实现此目的的一种方法是使您的类型可配置,以便它采用TaskSch

c# - .Net TPL : Limited Concurrency Level Task scheduler with task priority?

我目前正在使用此处详述的LimitedConcurrencyLevelTask​​Schedulerhttp://msdn.microsoft.com/en-us/library/ee789351.aspx我想加强这一点,以便可以为个人任务分配优先级。这些优先级不需要映射到线程优先级。它应该只会影响任务的启动顺序。有谁知道这样的任务调度器的例子吗?(很多日程安排的事情都在我头上,所以如果有一个现有的解决方案那就太好了) 最佳答案 ParallelExtensionsExtrasSamples.已经提供了这样一个调度程序,即Queue

c# - .NET 4.0 TPL 不是让 APM、EAP 和 BackgroundWorker 异步模式过时了吗?

我有两种C#WPF应用程序项目:基于.NET4.0,我无法迁移到.NET4.5基于.NET4.0,我可以迁移到.NET4.5所有这些都应该产生2-10个长时间运行(天)的进程,这些进程可以被用户取消并重新启动。我有兴趣遵循最佳设计实践。首先,现在,我有兴趣消除关于BackgroundWorker用法的歧义,但我希望我的问题对于其他异步模式应该是有效的。我看到关于的(矛盾的)并发观点AsynchronousProgrammingModel(APM)Event-basedAsynchronousPattern(EAP)BackgroundWorker异步模式:A).NET4.5使它们过时了

c# - TPL Dataflow,如何将项目转发到许多链接目标 block 中的一个特定目标 block ?

我正在寻找一种TPL数据流block解决方案,它可以容纳多个项目,可以链接到多个目标block,但能够将项目仅转发到通过过滤器的特定目标block/谓词。任何时候都不应将一个项目同时传递给多个目标block,始终只传递给与过滤器匹配的目标block,否则可以丢弃该项目。我不喜欢BroadCastBlock,因为如果我理解正确的话,它不保证交付(或者确实如此?)并且过滤是在目标block端完成的,这意味着BroadCastBlock本质上将每个项目的副本发送到所有linkedTo目标block。如果我理解正确的话,它也不会在任何时候容纳超过一件元素。我不想使用Post/Async,而是维