问题标签 [concurrent-queue]

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 投票
0 回答
41 浏览

c# - 在后台服务中读取流时出现 ObjectDisposedException

我想Request.Body在 ASP.Net Core 的后台服务中处理 a,所以我首先将它添加到 ConcurrentQueue。

concurrentQueueAddSingleton在 Startup.cs 中被实例化

BackgroundServices.cs 在 Startup.cs 中用AddHostedService. 当Request.Body它在队列中时,我想进一步处理它。

但是收到string content = await streamReader.ReadToEndAsync()以下错误消息:System.ObjectDisposedException in System.Private.CoreLib.dll

0 投票
2 回答
34 浏览

c# - 如何在出列 ConcurrentQueue 时设置最大并发线程数?

我有一个线程负责入队,一个线程负责出队。但是,数据入队的频率远远超过出队+处理数据所需的时间。当我执行以下操作时,我最终在数据处理中遇到了巨大的延迟:

接下来我尝试在单独的任务中处理数据,但这最终影响了项目中的其他任务,因为这种处理最终占用了分配给应用程序的大部分资源并产生了高线程数。

接下来,我尝试了以下方法:

这似乎已经解决了这个问题,但我想知道是否有更清洁的方法来做到这一点?出队时设置最大并发线程数的方法?

0 投票
2 回答
47 浏览

swift - 为什么带有同步的并发队列就像串行队列一样?

谁能帮我理解我创建的这段代码:

输出是串行顺序 1->10,中间等待 2 秒。最后会打印出来all finished

我明白最后一部分。但是我的问题是:

并发队列不应该同时启动多个任务吗?所以我最初的想法是:1-10的打印应该做concurrently,不一定是串行的顺序。

任何人都可以解释sync调用并发队列的目的,并给我一个例子,为什么以及何时需要它?