gpt4 book ai didi

c# - Pipelines.Sockets.Unofficial.SocketConnection 是否会在没有请求的情况下刷新?

转载 作者:行者123 更新时间:2023-11-30 22:54:15 27 4
gpt4 key购买 nike

我正在使用 Marc Gravell 的 Pipelines.Sockets.Unofficial 库通过套接字获取 IDuplexPipe,但我发现需要在刷新之前修改消息 header 的情况。如果我调用 Advance,我是否保证在我调用 FlushAsync 之前它永远不会刷新?类型暗示了这一点(Advance 是同步的,而 Flush 不是),但我希望有人能给出明确的答案。

此外,在我前进到缓冲区中的某个点后,我是否可以明智地写入该点?

最佳答案

不,这不能保证。 Advance 方法逻辑上将数据提交到出站管道;一旦提交,如果管道上有一个活跃的消费者,它可以读取该值并继续处理它。澄清一下,FlushAsync() 方法专门做了两件事,它们只是无关紧要:

  • 它确保消费者被唤醒(如果尚未唤醒)
  • 如果有背压,它会延迟生产者,直到消费者清除了一些背压

can I sensibly write to a point in the buffer after I've advanced past it?

没有

关于c# - Pipelines.Sockets.Unofficial.SocketConnection 是否会在没有请求的情况下刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56481746/

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