2016-06-17 3 views
2

documentationuv_tcp_connect입니다. 그것은 콜백을 사용하고 정수를 리턴libuv : uv_tcp_connect가 반환 한 int 값은 무엇입니까?

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

:
다음은 함수의 선언입니다.
일반적으로 libuv의 다른 함수는 오류 코드 (오류가없는 경우 0)를 반환합니다.
나는 이것도 같은 방식으로 작동합니다.

내게 명확하지 않은 (그리고 문서화되지 않은) 것은 : 반환 값이 0이 아닌 경우 콜백이 호출됩니다.
다시 말해, 0과 다른 반환 값은 작업이 전혀 수행되지 않거나 콜백이 호출된다는 것을 의미합니까?

불행히도 실제로 반환 값이 무엇인지는 문서화되지 않은 것으로 보입니다.

답변

1

설명서의 error handling section을 참조하십시오. 오류 (< 반환)는 아무 작업도 수행되지 않으며 콜백이 호출되지 않는다는 것을 의미합니다.

+0

해당 섹션에서 언급 한 문장과 같은 문장이 없습니다. – skypjack

+1

아, 나는 거기에 있었다는 것을 맹세했었다 (나는 그것을 썼다). 고쳐! https://github.com/libuv/libuv/pull/918 – saghul

+0

감사. [My C++ wrapper] (https://github.com/skypjack/uvw)는이 정보로부터 이익을 얻고 있습니다. :-) – skypjack

0

From reading the source을 :

  • 반환 값은 0이 모두 잘 갔다 의미하는 (음) 오류 코드입니다.
  • 반환 경로가 0이 아닌 코드는 콜백을 참조하지 않으므로 오류 발생시 호출되지 않을 것이라고 생각합니다.