Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有过度思考事情的倾向,但在任何地方都找不到任何关于这个的东西。大多数具有发送限制的 IRC 网络/频道都以一种方式实现它,即您只能在特定时间段内发送 X 条消息(在外网的情况下,5 秒内发送 5 条消息),这意味着我要么必须有很长的延迟在消息之间,或实施一种方法来确保我不会发送更多消息,同时仍然快速发送消息直到那时。我将如何去做后者?
(我在 Java 中这样做,但问题显然不依赖于此,因此答案中引用的任何代码都可以是任何语言。)
排队所有传出消息。仅在您低于限额时发送。如果您超出限制,请将它们添加到您的队列中,并在经过足够的时间后发送它们,以便您再次低于限制。
如果您只使用您知道它们的同一个网络,您只需要找出一种方法来检测这些限制或对它们进行硬编码。