如何控制libuv下的传输速度?

时间:2016-07-01 03:27:48

标签: libuv

众所周知,libuv是一个异步网络库,它会尽力发出数据,但是,在某些情况下,我们无法占用所有带宽,传输速度需要控制在指定值,如何用libuv api做到这一点?

1 个答案:

答案 0 :(得分:1)

libuv没有提供内置机制来执行此操作,但它确实为您提供了足够的信息来构建它。假设你正在使用TCP,你将反复调用uv_write。然后,您可以查询write_queue_sizehttp://docs.libuv.org/en/v1.x/stream.html#c.uv_stream_t.write_queue_size)并停止等待,直到它耗尽一点。您可以在回调传递给uv_write

的情况下执行此操作