问题标签 [flow-control]

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 回答
38 浏览

python - Python3 跳过流检查

我的 python3 持久密码储物柜有点麻烦。它按预期/期望存储和检索密码,但我决定插入“退出”检查,以便如果信息输入不正确,您可以返回并重新输入。它似乎因为没有容易识别的原因而跳过了这个检查。

当我运行此代码时,无论 corr 变量是什么,它都会使更改持久化。这不是我想要的。我尝试在 elif 语句中明确声明 no 选项,它也跳过了这些选项。是多个“或”语句将其扔掉还是我应该注意的其他事情?

0 投票
1 回答
1028 浏览

javascript - 如何使用 vo.js 在 for 循环中产生多个承诺?

基于这个例子 - vo/examples/9-pipeline-composition.js,我将如何return yield保证这个 for 循环的每次迭代?

目前循环运行一次并产生一个承诺。

0 投票
2 回答
981 浏览

networking - Go-Back N 协议 ACK

我正在尝试使用此网站了解 Go-Back N 的工作原理:- http://www.ccs-labs.org/teaching/rn/animations/gbn_sr/

在这里,假设我们正在发送帧 1,2,3,4,5,6(窗口大小 4)并且在当前窗口中我们有帧 1,2,3,4。现在假设 ACK 4 丢失,然后根据网站,当前窗口中的任何帧都不会被重新传输。

据我了解,必须重新传输(当前窗口的)帧3、4、5、6。

我哪里错了?

0 投票
1 回答
797 浏览

linux - 从 bash 脚本设置串口流控制线?

是否可以从 bash 脚本手动控制串行端口的握手/流控制线?我指的是 RTS、CTS、DTR 和 DSR。我不想启用自动流量控制,而是手动操纵这些信号。在我的应用程序中,这些线路控制 LED。我已经看到使用 IOCtl() 执行此操作的 C 代码,但我想知道是否可以通过 bash?

0 投票
0 回答
340 浏览

buffer - PCIe DMA 使用 mem=XXX 分配速度变慢,流量控制信用问题

我正在尝试使用描述符旁路接口(无 Scatter/Gather)和 PCIe 3.0 x8 将 FPGA 从 DMA 到主机 PC(CentOS 6.9、2.6.32 内核)DDR4 内存。

我所做的是使用 mem=16384MB 引导参数留出 240GB 的 RAM(总 RAM 为 256GB)。我将 DMA 地址设置为 0x400000000,并将每个描述符的有效负载大小(256 字节)递增。

我看到的是在约 50-60 KB 之后,由于没有收到流量控制信用,传输停止/减速显着。因此,在传输开始时,我可以以 6+ GB/s 的速度发送数据,但稍等片刻后,它会减慢到 100 MB/s 左右。

可能是什么问题呢?是因为没有为 DMA 传输正确分配内存吗?这只是我的设计必须考虑的事情,在我的 FPGA 逻辑中添加节流吗?这似乎不对。我只是想传输 2GB/s 的连续数据,所以我认为有足够的带宽。

0 投票
3 回答
14567 浏览

networking - 数据链路层的流量控制与传输层的流量控制

我试图了解 OSI 层模型。
我经常在数据链路层 (L2) 和传输层 (L4) 中阅读流量控制。但我找不到他们使用的方法。
传输层是否通过使用窗口机制通过 TCP 进行流量控制?
但是数据链路层如何/如何进行流量控制?

0 投票
0 回答
465 浏览

linux - 收集了多个带有规则链的 write_http 插件

我正在尝试设置一个 collectd 配置,将指标发送到两个单独的 http 服务器端点。

我的设置有运行 collectd 插件的客户端 (C)。它收集的所有指标中,所有指标都需要发送到服务器(A);并且部分指标也需要发送到服务器(B)。

设置:

我正在为 write_http 插件使用以下配置:

此外,为了有选择地发送指标,我尝试使用以下流控制配置:

根据我对流控制规则的理解,上述配置应将指标从插件(负载、接口、磁盘、cpu、内存、df、交换和进程)发送到 write_http 插件的 serverb 节点(作为“brule”规则的一部分)。这些匹配的指标也应该可用于发送到 http 插件中的其他节点(因为“brule”规则中的目标“return”)。

所有其他指标都应由 http 插件中的其他节点处理和发送(因为目标“返回”在“brule”规则之外)。

我面临的问题是我无法让功能按照我想要的方式工作。

什么工作:

  • 如果我删除 PostCacheChain 配置,所有指标都复制到服务器 A 和服务器 B。
  • 如果保留 PostCacheChain 配置,选定的指标仅发送到服务器 B。
  • 如果使用另一个写入插件,则在使用 PostCacheChain 配置时,发送到该插件的所有指标和仅发送到服务器 B 的 SELECTED 指标

什么不起作用:

  • 当使用列出的 PostCacheChain 时,没有指标发送到服务器 A

任何使拆分目标工作的解决方案或建议将不胜感激。

ps:write_http 插件和 collectd 流控制的文档似乎都表明我的方法是正确的。但是,对我来说,一个 write_http 插件似乎只被处理一次(即使它有多个节点),并且一旦在规则中引用了 write 插件,它就不会在规则之外被处理。

0 投票
1 回答
2140 浏览

c# - gRPC 的 C# 实现是否具有流式背压?

我有一个 gRPC 服务,它接受来自客户端的流式消息。客户端以高速率向服务器发送有限序列消息。

结果是服务器缓冲了大量消息(> 1GB),并且它的内存使用量猛增,然后在处理它们时慢慢耗尽。

我发现即使我等待所有异步调用,客户端也会尽可能快地推送消息。我希望客户放慢速度。

我已经实现了客户端在发送下一条消息之前等待的显式 ack 响应,但是由于 http/2 已经内置了流控制语义,我觉得我有点重新发明轮子。

我有两个具体的问题。

  1. C# 实现会自动应用背压吗?例如,如果消费端在异步流上调用 MoveNext 的速度很慢,那么客户端是否需要更长的时间才能从其对 WriteAsync 的调用中返回?

  2. gRPC 的 C# 实现是否有任何可配置的方式来限制流式 rpc 调用的消息缓冲。例如,限制缓冲消息的数量或限制调用缓冲区中的空间量。

0 投票
1 回答
28 浏览

php - How to control the amount of connections to webserver

I have built a small car robot using Raspberry Pi. The control for the robot is accessed via an apache webserver hosted on the Pi, which uses PHP to drive the motors based on user input. I plan to open this robot to the internet to allow anyone to control it, but my question is: Is there a way to control the amount of users connected to the webserver, as I would like only one person at a time to be able to control the bot?

0 投票
1 回答
1340 浏览

tcp - 为什么我得到没有 ZeroWindow 的 TCP 窗口更新

文档说 TCP 窗口更新通常是由于以前的零窗口。

我找不到以前的零窗口。还可能是什么?