C - libuv:uv_tcp_connect返回的整数是什么?



考虑uv_tcp_connect的文档。
这是函数的声明:

int uv_tcp_connect(uv_connect_t* req, uv_tcp_t* handle, const struct sockaddr* addr, uv_connect_cb cb);

它接受回调并返回整数。
通常, libuv 中的其他功能返回错误代码(0如果没有错误)。
我想这也是如此。

我不清楚的是:如果返回值不等于0,是否会调用回调?
换句话说,返回值是否不同于0意味着完全无法执行操作,或者保证调用回调?

不幸的是,似乎没有记录返回值实际是什么。

请参阅文档中的错误处理部分。错误(返回< 0)意味着不会执行任何操作,也不会调用任何回调。

如果它返回非零结果,则不会调用回调。

您可以检查此线程以获取更多详细信息:

https://github.com/libuv/libuv/sissues/391

从阅读来源:

  • 返回值是(负)错误代码,0表示一切都很好。
  • 具有非零返回路径的代码不引用回调,因此我认为它不会被错误调用。

最新更新