问题标签 [queueing]

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 投票
1 回答
3244 浏览

php - rabbitmq AMQP::consume()

AMQP函数consume()是一个带有回调的阻塞函数,是否可以为consume()函数设置超时,所以在特定时间后它不再阻塞并且代码执行完成?

0 投票
1 回答
446 浏览

redis - 写入两个 Redis 服务器

我正在寻找一种将 Redis 写入从一个特定客户端发送到运行在不同主机上的两个 Redis 服务器的方法。

这不是完全复制,如果写入来自任何其他客户端,我不希望那些被复制。例如,生产者的写入会发送到 redis1 和 redis2。来自 consumer1 和 consumer2 的写入(实际上是删除)应该只分别修改 redis1 和 redis2

谢谢!

0 投票
1 回答
1006 浏览

python - PyGame排队音乐问题,不等待第一首歌

我正在播放从我选择的音乐文件目录生成的列表中的 ogg 声音文件。由于某种原因,第一首歌曲被跳过并从第二首歌曲开始播放。出于某种原因,它偶尔会播放第一首歌曲的瞬间,这让我相信我如何尝试将歌曲从列表中循环排列,但我似乎无法修复它。

0 投票
2 回答
1965 浏览

java - java ThreadPoolExecutor 默认

我正在阅读有关ThreadPoolExecutor的 Oracles 文档,特别是有关排队的信息,以防请求多于可用线程。但是我没有找到默认设置是什么。

要实例化 Executor,我唯一要做的就是:

其中 executor 来自 java.util.concurrent.ExecutorService,而 Executor 是 java.util.concurrent.Executors 给定的。

从那里开始,执行者再次出现的唯一行是:

如您所见,我从未设置有关执行程序正在使用的队列类型或大小的任何属性。

我想知道的是我链接的文档中描述的哪些策略正在被使用。

正如我所展示的那样实现:我使用的是无界队列吗?有界吗?如果是这样,默认尺寸是多少?

0 投票
0 回答
237 浏览

c# - 使用 Toub 的线程池执行长时间运行的任务时出现零星的内存膨胀?

我读过 Toub 的线程池对于长时间运行的任务来说是一个很好的解决方案,所以我在下面的代码中实现了它。我什至不确定我的实现是否是一个好的实现,因为我似乎有零星的内存膨胀。该过程大部分时间运行在 50 MB 左右,然后将飙升至近 GB 并保持在那里。

线程池实现如下(我什至应该这样做吗?):

FindWork 方法如下所示:

如果队列中没有任何内容,则 ConsumeWithBlocking 方法会阻塞。然后,如果我们成功检索消息并处理它,我们调用 return 退出线程。

通常我们运行 10 个线程,它们通常处于阻塞状态 (WaitSleepJoin)。这样做的全部意义在于始终运行 10 个线程。

我对这一切都错了吗?

0 投票
2 回答
1176 浏览

c# - 取消处于阻塞状态的任务的最佳方法是什么?

我有运行的任务调用从 RabbitMQ 读取的方法。当队列中没有任何内容时,该方法只是阻塞。所以任务有一个“运行”状态,但实际上并没有做任何事情。有什么方法可以优雅地结束这些任务吗?

访问队列的代码如下:

任务创建如下:

目前,我已将任务创建代码更改为如下所示,以便可以中止任务。我知道这不是一个好的解决方案,但我不知道还能做什么。

0 投票
0 回答
277 浏览

oracle - 使用 Oracle Advanced Queuing 接收数据库表行的更改

我对 Oracle 高级队列感到困惑。看起来这是一种将数据库通知异步发送到应用层的方法。但是从一些细节来看,除了一张桌子,还有一个要设置的队列。并且有明确的调用来发布消息,这些消息随后将被推送到应用层。

这会自动与表行修改一起工作吗?我希望,如果特定表发生更改(无论是谁/如何更改),以表示已更改行的二进制对象的形式接收有关它的通知。

(注意:我知道Oracle Query change notification,CQN,但我对它的性能并不满意,我的目标是看看Oracle Advanced Queue 是否能以更快的速度提供类似的目标)。

提前致谢。

0 投票
1 回答
228 浏览

amazon-web-services - 在 Rabbitmq 中检索远程联合上游的排队消息

我最近一直致力于在通过联合连接的 Google 计算机引擎和 AWS 上设置 RabbitMQ 集群。到目前为止,尽管我遇到了一个我无法弄清楚如何解决的问题,但我已经能够正常工作。

在某个时候,我想看看如果我删除 GCE 集群中的所有虚拟机然后重新创建它们会发生什么。我能够恢复集群,但之前联合的 AWS 集群交换继续保留排队的消息,即使在创建了从 GCE 到 AWS 的新联合链接之后也是如此。AWS 集群上的所有新消息都通过联合链接检索,但也没有发送旧的排队消息。

我怎样才能让这些旧消息也发送到新的联合链接上?

0 投票
0 回答
840 浏览

python - Python Simulation Patient-Doctor Link(Simpy,急诊科)

我正在开展一个项目,以使用 Simpy 2.6 描述急诊科的患者流程。

假设入口区域有 3 位医生。我的流程是,在看过一位特定的医生(比如 X 医生)后,患者会(有 80% 的机会)去实验室。实验室测试结束后,患者将通过重新加入队列返回原来的医生 X。

但是我怎样才能在患者医生之间建立联系?现在我的代码中的病人是“无记忆的”——他们只是在实验室测试后随机去看医生。入院区共有床位20张。

请帮我!先感谢您!!

0 投票
1 回答
749 浏览

markov-chains - 如何求解具有无限状态空间的二维马尔可夫链

我有二维马尔可夫链,我想计算稳态概率,然后计算基本性能测量,如预期客户数量、预期等待时间等。您可以查看下面的转换率图链接:

http://tinypic.com/view.php?pic=2n063dd&s=8

当我寻找解决方法时,出现了矩阵几何和谱扩展方法。我尝试了矩阵几何方法,但是由于我的马尔可夫链不是重复的,所以它不起作用。

我读了一些论文(例如,一类马尔可夫模型的光谱扩展解决方案:应用和与矩阵几何方法的比较),但我不知道如何创建矩阵以及什么是稳态概率。

  1. 频谱扩展方法是否需要像矩阵几何方法那样“重复过程”?如果不是,如何适用于我的问题?
  2. 还有其他计算方法吗?

感谢你的帮助!

阿里