gpt4 book ai didi

python - Python 每秒增加消息数

转载 作者:行者123 更新时间:2023-12-01 00:20:01 25 4
gpt4 key购买 nike

我已经用头撞墙 20 分钟了,答案非常简单,我只是似乎不知道如何解决这个问题。

我有一个客户端和一个服务器,我希望客户端每秒向服务器发送 10 条消息。现在这工作正常,但增量却不起作用。我想让它走:

消息1、消息2、消息3.....消息16、消息17

依此类推,直到我关闭连接。但它在 10 处停止,然后循环回到消息 1、消息 2,依此类推。

我的代码:

def send_packages():
print('Sending ' + packages_per_second + ' packages per second')
while True:
if int(packages_per_second) > int(max_packages_per_second):
print('The server cannot handle more than 25 packages per second')
break
elif int(packages_per_second) < 1:
print('Please check config file and make sure the "max_packages" is larger than 0')
break
else:
for i in range(int(packages_per_second)):
message = 'Message #' + str(i)
sock.sendto(message.encode('utf-8'), server_address)
sleep(1)

最佳答案

您并没有限制消息实际发送的速度;而是限制了消息的实际发送速度。您只需在消息批处理之间暂停一秒钟即可。为了准确地限制您的速率,您需要知道发送一条消息实际需要多长时间,然后足够长的时间以使包裹数量加上单独的 sleep 时间加起来为一秒。为了简单起见(考虑到您的包裹率较低),我们假设消息是即时发送的。然后你会想要一个像这样的循环

from itertools import count

def send_packages():
print(f"Sending {packages_per_second} packages per second")
delay = 1 / packages_per_second
for i in count():
message = f'Message #{i}'
sock.sendto(message.encode(), server_address)
sleep(delay)

如果 package_per_second 为 10,您将在每条消息之间休眠 0.1 秒。

关于python - Python 每秒增加消息数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59020160/

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