gpt4 book ai didi

c - zmq - 当进程终止时拉队列会发生什么?

转载 作者:行者123 更新时间:2023-11-30 14:51:06 25 4
gpt4 key购买 nike

所以我有 8 个工作线程(PULL 套接字),它们从单个绑定(bind)的 PUSH 套接字提供数据。它们每秒处理大量数据,有时会随机崩溃。显然,我应该尝试处理这些崩溃,但我很好奇这个系统目前的弹性如何。

我注意到,工作进程有时在高事件期间内存使用量会激增(但这不是泄漏,因为它会回落,并且这是一个没有垃圾收集的 C 程序),这让我相信 zmq当工作人员对所有后台记录的消息进行排序时,PULL 套接字队列正在填满。

如果进程在此状态下终止,会发生什么情况?消息是否也在 PUSH 套接字中排队或者丢失了?

最佳答案

据我所知,是的,如果打开 PULL 套接字的进程死亡,那么接收方队列中尚未在回调中接收到的任何消息都会消失。

此外,是的,如果 PULL 套接字无法跟上 PUSHers,您会发现内存使用量有所增加。基本上,消息开始在客户端的 PULL 套接字队列中堆积。

关于c - zmq - 当进程终止时拉队列会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48529382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com