您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ uv_last_error函数代码示例

51自学网 2021-06-03 09:27:47
  C++
这篇教程C++ uv_last_error函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中uv_last_error函数的典型用法代码示例。如果您正苦于以下问题:C++ uv_last_error函数的具体用法?C++ uv_last_error怎么用?C++ uv_last_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了uv_last_error函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: new_timer

static int new_timer(lua_State* L) {  uv_timer_t* handle = luv_create_timer(L);  if (uv_timer_init(uv_default_loop(), handle)) {    uv_err_t err = uv_last_error(uv_default_loop());    return luaL_error(L, "new_timer: %s", uv_strerror(err));  }  return 1;}
开发者ID:tarruda,项目名称:luv,代码行数:8,


示例2: connect_cb

void connect_cb(uv_connect_t* req, int status) {  int r;  if (!status) {    state_t* state = (state_t*) req->handle->data;    state->is_connected = 1;    r = uv_read_start(req->handle, alloc_cb, read_cb);    if (r) {      uv_err_t err = uv_last_error(req->handle->loop);      printf("error occurred. %s/n", uv_strerror(err));    }  } else {    uv_err_t err = uv_last_error(req->handle->loop);    printf("error occurred. %s/n", uv_strerror(err));  }  free(req);}
开发者ID:nori0428,项目名称:libmuv,代码行数:17,


示例3: uv_read_start

void HttpRequest::handleRequest() {  int r = uv_read_start(handle(), &on_alloc, &HttpRequest_on_request_read);  if (r) {    uv_err_t err = uv_last_error(_pLoop);    fatal_error("read_start", uv_strerror(err));    return;  }}
开发者ID:GalaxyData2015,项目名称:httpuv,代码行数:8,


示例4: read_cb

static void read_cb(uv_stream_t* tcp, ssize_t nread, uv_buf_t buf) {  /* The server will not send anything, it should close gracefully. */  if (buf.base) {    free(buf.base);  }  if (nread != -1) {    ASSERT(nread == 0);    ASSERT(uv_last_error().code == UV_EAGAIN);  } else {    ASSERT(tcp != NULL);    ASSERT(nread == -1);    ASSERT(uv_last_error().code == UV_EOF);    uv_close((uv_handle_t*)tcp, close_cb);  }}
开发者ID:creationix,项目名称:node,代码行数:17,


示例5: on_read

void on_read(uv_stream_t *client, ssize_t nread, uv_buf_t buf) {    if (nread == -1) {        if (uv_last_error(loop).code != UV_EOF)            fprintf(stderr, "Read error %s/n", uv_err_name(uv_last_error(loop)));        uv_close((uv_handle_t*) client, NULL);        free(client);        return;    }    char *data = (char*) malloc(sizeof(char) * (nread+1));    data[nread] = '/0';    strncpy(data, buf.base, nread);    fprintf(stderr, "%s", data);    free(data);    free(buf.base);}
开发者ID:AndrewTsao,项目名称:uvbook,代码行数:17,


示例6: echo_write

void echo_write(uv_write_t *req, int status) {    if (status == -1) {        fprintf(stderr, "Write error %s/n", uv_err_name(uv_last_error(loop)));    }    char *base = (char*) req->data;    free(base);    free(req);}
开发者ID:sunnyboy00,项目名称:uvbook,代码行数:8,


示例7: after_write

static void after_write(uv_write_t* req, int status) {  if (status != 0) {    fprintf(stderr, "write error %s/n", uv_err_name(uv_last_error(loop)));    uv_close((uv_handle_t*)req->handle, close_cb);    conns_failed++;    return;  }}
开发者ID:178620086,项目名称:Node4Android,代码行数:8,


示例8: create_dir

static void create_dir(uv_loop_t* loop, const char* name) {  int r;  uv_fs_t req;  r = uv_fs_rmdir(loop, &req, name, NULL);  r = uv_fs_mkdir(loop, &req, name, 0755, NULL);  ASSERT(r == 0 || uv_last_error(loop).code == UV_EEXIST);  uv_fs_req_cleanup(&req);}
开发者ID:4rejin,项目名称:node,代码行数:8,


示例9: spawn

void spawn() {  int i;  char** env = NULL;  env = env_copy(environ, env);  child = malloc(sizeof(uv_process_t));  uv_stdio_container_t stdio[4];  uv_process_options_t options;  uv_pipe_init(loop, &child_stdout, 0);  uv_pipe_init(loop, &child_stderr, 0);  uv_pipe_init(loop, &child_ipc, 0);  //  // Setup child's stdio. stdout and stderr are pipes so that we can read  // child process' output.  // FD 3 is a pipe used for IPC.  //  options.stdio_count = 4;  stdio[0].flags = UV_INHERIT_FD;  stdio[0].data.fd = 0;  stdio[1].flags = UV_CREATE_PIPE | UV_WRITABLE_PIPE;  stdio[1].data.stream = (uv_stream_t*) &child_stdout;  stdio[2].flags = UV_CREATE_PIPE | UV_WRITABLE_PIPE;  stdio[2].data.stream = (uv_stream_t*) &child_stderr;  stdio[3].flags = UV_CREATE_PIPE | UV_WRITABLE_PIPE;  stdio[3].data.stream = (uv_stream_t*) &child_ipc;  options.env = env;  options.cwd = NULL;  options.file = arguments[0];  options.args = arguments;  options.flags = 0;  options.stdio = stdio;  options.exit_cb = on_process_exit;  for (i = 0; i < PLUGIN_COUNT; i++) {    if (plugins[i].process_options_cb) {      plugins[i].process_options_cb(&options);    }  }  if (uv_spawn(loop, child, options)) {    fprintf(stderr, "uv_spawn: %s/n", uv_err_name(uv_last_error(loop)));    return;  }  for (i = 0; i < PLUGIN_COUNT; i++) {    if (plugins[i].process_spawned_cb) {      plugins[i].process_spawned_cb(child, &options);    }  }  uv_read_start(options.stdio[1].data.stream, forza__on_alloc, forza__on_stdout_read);  uv_read_start(options.stdio[2].data.stream, forza__on_alloc, forza__on_stderr_read);  uv_read_start(options.stdio[3].data.stream, forza__on_alloc, forza__on_ipc_read);}
开发者ID:revington,项目名称:forza,代码行数:58,


示例10: assert

/* * Class:     com_iwebpp_libuvpp_handles_LoopHandle * Method:    _get_last_error * Signature: (J)Lcom/iwebpp/libuvpp/NativeException; */extern "C" JNIEXPORT  jthrowable JNICALL Java_com_iwebpp_libuvpp_handles_LoopHandle__1get_1last_1error  (JNIEnv *env, jobject that, jlong ptr) {  assert(ptr);  uv_loop_t* loop = reinterpret_cast<uv_loop_t*>(ptr);  int code = uv_last_error(loop).code;  return NewException(env, code);}
开发者ID:InstantWebP2P,项目名称:node-android,代码行数:14,


示例11: on_write

void on_write(uv_fs_t *req) {    uv_fs_req_cleanup(req);    if (req->result < 0) {        fprintf(stderr, "Write error: %s/n", uv_strerror(uv_last_error(uv_default_loop())));    }    else {        uv_fs_read(uv_default_loop(), &read_req, open_req.result, buffer, sizeof(buffer), -1, on_read);    }}
开发者ID:343829084,项目名称:uvbook,代码行数:9,


示例12: on_connect_with_close

static void on_connect_with_close(uv_connect_t *req, int status) {  ASSERT((uv_stream_t*) &tcp == req->handle);  ASSERT(status == -1);  ASSERT(uv_last_error(uv_default_loop()).code == UV_ECONNREFUSED);  connect_cb_calls++;  ASSERT(close_cb_calls == 0);  uv_close((uv_handle_t*)req->handle, on_close);}
开发者ID:178620086,项目名称:Node4Android,代码行数:9,


示例13: luv_udp_recv_stop

int luv_udp_recv_stop(lua_State* L) {  uv_udp_t* handle = (uv_udp_t*)luv_checkudata(L, 1, "udp");  if (uv_udp_recv_stop(handle)) {    uv_err_t err = uv_last_error(luv_get_loop(L));    return luaL_error(L, "udp_recv_stop: %s", uv_strerror(err));  }  luv_handle_unref(L, handle->data);  return 0;}
开发者ID:AndrewTsao,项目名称:luvit,代码行数:9,


示例14: on_connect_without_close

static void on_connect_without_close(uv_connect_t *req, int status) {  ASSERT(status == -1);  ASSERT(uv_last_error(uv_default_loop()).code == UV_ECONNREFUSED);  connect_cb_calls++;  uv_timer_start(&timer, timer_cb, 100, 0);  ASSERT(close_cb_calls == 0);}
开发者ID:178620086,项目名称:Node4Android,代码行数:9,


示例15: file_readdir_cb

static void file_readdir_cb(uv_fs_t* req) {  ASSERT(req == &readdir_req);  ASSERT(req->fs_type == UV_FS_READDIR);  ASSERT(req->result == -1);  ASSERT(req->ptr == NULL);  ASSERT(uv_last_error(req->loop).code == UV_ENOTDIR);  uv_fs_req_cleanup(req);  readdir_cb_count++;}
开发者ID:amuxtux,项目名称:libuv,代码行数:9,


示例16: _http_start

/* _http_start(): start http server.*/static void_http_start(u2_http* htp_u){  struct sockaddr_in add_u;  uv_tcp_init(u2L, &htp_u->wax_u);  memset(&add_u, 0, sizeof(add_u));  add_u.sin_family = AF_INET;  add_u.sin_addr.s_addr = INADDR_ANY;  /*  Try ascending ports.  */  while ( 1 ) {    add_u.sin_port = htons(htp_u->por_w);    if ( 0 != uv_tcp_bind(&htp_u->wax_u, add_u)  ) {      uv_err_t las_u = uv_last_error(u2L);      if ( UV_EADDRINUSE == las_u.code ) {        htp_u->por_w++;        continue;      }      else {        uL(fprintf(uH, "http: bind: %s/n", uv_strerror(las_u)));      }    }    if ( 0 != uv_listen((uv_stream_t*)&htp_u->wax_u, 16, _http_listen_cb) ) {      uv_err_t las_u = uv_last_error(u2L);      if ( UV_EADDRINUSE == las_u.code ) {        htp_u->por_w++;        continue;      }      else {        uL(fprintf(uH, "http: listen: %s/n", uv_strerror(las_u)));      }    }    uL(fprintf(uH, "http: live (%s) on %d/n",                   (u2_yes == htp_u->sec) ? "/"secure/"" : "insecure",                   htp_u->por_w));    break;  }}
开发者ID:gphummer,项目名称:urbit,代码行数:46,


示例17: connect_to_remote_cb

static void connect_to_remote_cb(uv_connect_t* req, int status){	server_ctx *ctx = (server_ctx *)req->data;	if (status) {		if (uv_last_error(req->handle->loop).code != UV_ECANCELED) {			SHOW_UV_ERROR(ctx->client.loop);			uv_close((uv_handle_t*)(void *)&ctx->remote, remote_established_close_cb);			free(ctx->handshake_buffer);			free(req);		}		return;	}	free(req);	LOGCONN(&ctx->remote, "Connected to %s");	uv_buf_t buf;	buf.base = (char *)ctx->handshake_buffer;	buf.len = HANDSHAKE_BUFFER_SIZE;	if (!ctx->buffer_len) {		free(ctx->handshake_buffer);	} else {		uv_write_t *wreq = (uv_write_t *)malloc(sizeof(uv_write_t));		if (!wreq) {			uv_close((uv_handle_t*)(void *)&ctx->client, client_established_close_cb);			FATAL("malloc() failed!");		}		wreq->data = buf.base;		buf.len = ctx->buffer_len;		int n = uv_write(wreq, (uv_stream_t *)(void *)&ctx->remote, &buf, 1, after_write_cb);		if (n) {			LOGE("Write to remote failed!");			free(wreq);			uv_close((uv_handle_t*)(void *)&ctx->remote, remote_established_close_cb);			return;		}	}	ctx->handshake_buffer = NULL;	ctx->buffer_len = 0;		int n = uv_read_start((uv_stream_t *)(void *)&ctx->client, established_alloc_cb, client_established_read_cb);	if (n) {		SHOW_UV_ERROR(ctx->client.loop);		uv_close((uv_handle_t*)(void *)&ctx->client, client_established_close_cb);		return;	}	n = uv_read_start((uv_stream_t *)(void *)&ctx->remote, established_alloc_cb, remote_established_read_cb);	if (n) {		SHOW_UV_ERROR(ctx->client.loop);		uv_close((uv_handle_t*)(void *)&ctx->remote, remote_established_close_cb);		return;	}}
开发者ID:sqbing,项目名称:shadowsocks-libuv,代码行数:56,


示例18: main

int main(int argc, char *argv[]) {  char** hosts;  char* hostname;  char* user;  char* name;  int i, c = 0;  uv_interface_address_t* addresses;  uv_err_t err;  srand(time(NULL));  atexit(forza__kill);  signal(SIGTERM, forza__on_sigterm);  loop = uv_default_loop();#ifdef FORZA_VERSION_HASH  printf("forza "FORZA_VERSION_HASH"/n");#else  printf("forza/n");#endif  opt = saneopt_init(argc - 1, argv + 1);  saneopt_alias(opt, "host", "h");  hosts = saneopt_get_all(opt, "host");  hostname = saneopt_get(opt, "hostname");  user = saneopt_get(opt, "app-user");  name = saneopt_get(opt, "app-name");  arguments = saneopt_arguments(opt);  if (hostname == NULL) {    hostname = malloc(256 * sizeof(*hostname));    err = uv_interface_addresses(&addresses, &c);    if (err.code != UV_OK) {      fprintf(stderr, "uv_interface_addresses: %s/n", uv_err_name(uv_last_error(loop)));      return 1;    }    for (i = 0; i < c; i++) {      /* For now, only grab the first non-internal, non 0.0.0.0 interface.       * TODO: Make this smarter.       */      if (addresses[i].is_internal) continue;      uv_ip4_name(&addresses[i].address.address4, hostname, 255 * sizeof(*hostname));      if (strcmp(hostname, "0.0.0.0") != 0) break;    }    uv_free_interface_addresses(addresses, c);  }  forza_connect(hosts, hostname, user, name, on_connect);  uv_run(loop, UV_RUN_DEFAULT);  free(hosts);  return 0;}
开发者ID:revington,项目名称:forza,代码行数:56,


示例19: on_read

static void on_read(uv_stream_t* tcp, ssize_t nread, uv_buf_t buf) {  uv_err_t err = uv_last_error(uv_default_loop());  if (nread > 0) {    output_used += nread;  } else if (nread < 0) {    ASSERT(err.code == UV_EOF);    uv_close((uv_handle_t*)tcp, close_cb);  }}
开发者ID:IsCoolEntertainment,项目名称:debpkg_nodejs,代码行数:10,


示例20: luv_execpath

int luv_execpath(lua_State* L) {  size_t size = 2*PATH_MAX;  char exec_path[size];  if (uv_exepath(exec_path, &size)) {    uv_err_t err = uv_last_error(uv_default_loop());    return luaL_error(L, "tcp_bind6: %s", uv_strerror(err));  }  lua_pushlstring(L, exec_path, size);  return 1;}
开发者ID:brimworks,项目名称:luvit,代码行数:10,


示例21: on_connect

void on_connect(uv_connect_t *req, int status) {    if (status == -1) {        fprintf(stderr, "connect failed error %s/n", uv_err_name(uv_last_error(loop)));        free(req);        return;    }    uv_read_start((uv_stream_t*) req->data, alloc_buffer, on_read);    free(req);}
开发者ID:AndrewTsao,项目名称:uvbook,代码行数:10,


示例22: net_resolve_cb

voidnet_resolve_cb(uv_getaddrinfo_t *rv, int stat, net_ai * ai) {  net_t * net = (net_t*) rv->data;  err_t err;  socketPair_t dest;  char addr[INET6_ADDRSTRLEN];  int ret;  if (stat != 0) {    err = uv_last_error(net->loop);    if (net->error_cb) {      net->error_cb(net, err, (char *) uv_strerror(err));    } else {      printf("error(%s:%d) %s", net->hostname, net->port, (char *) uv_strerror(err));      net_free(net);    }    return;  }  uv_ip4_name((socketPair_t *) ai->ai_addr, addr, INET6_ADDRSTRLEN);  dest = uv_ip4_addr(addr, net->port);  /*   * create tcp instance.   */  uv_tcp_init(net->loop, net->handle);  ret = uv_tcp_connect(net->conn, net->handle, dest, net_connect_cb);  if (ret != NET_OK) {    err = uv_last_error(net->loop);    if (net->error_cb) {      net->error_cb(net, err, (char *) uv_strerror(err));    } else {      printf("error(%s:%d) %s", net->hostname, net->port, (char *) uv_strerror(err));      net_free(net);    }    return;  }  /*   * free   */  uv_freeaddrinfo(ai);}
开发者ID:flybird119,项目名称:uv-mongo,代码行数:43,


示例23: connect_cb

static void connect_cb(uv_req_t* req, int status) {  if (status) LOG(uv_strerror(uv_last_error()));  ASSERT(status == 0);  write_sockets++;  req_free(req);  maybe_connect_some();  maybe_start_writing();}
开发者ID:sequoiar,项目名称:libuv,代码行数:10,


示例24: luv_execpath

int luv_execpath(lua_State* L) {  size_t size = 2*PATH_MAX;  char exec_path[2*PATH_MAX];  if (uv_exepath(exec_path, &size)) {    uv_err_t err = uv_last_error(luv_get_loop(L));    return luaL_error(L, "uv_exepath: %s", uv_strerror(err));  }  lua_pushlstring(L, exec_path, size);  return 1;}
开发者ID:GamingAtheist,项目名称:luvit,代码行数:10,


示例25: luv_tcp_nodelay

int luv_tcp_nodelay (lua_State* L) {  uv_tcp_t* handle = (uv_tcp_t*)luv_checkudata(L, 1, "tcp");  int enable = lua_toboolean(L, 2);  if (uv_tcp_nodelay(handle, enable)) {    uv_err_t err = uv_last_error(luv_get_loop(L));    return luaL_error(L, "tcp_nodelay: %s", uv_strerror(err));  }  return 0;}
开发者ID:AndrewTsao,项目名称:luvit,代码行数:10,


示例26: _send_cb

static void _send_cb(uv_udp_send_t* req, int status) {  assert(req->handle);  assert(req->data);  assert(req->handle->data);  UDPCallbacks* cb = reinterpret_cast<UDPCallbacks*>(req->handle->data);  ContextHolder* req_data = reinterpret_cast<ContextHolder*>(req->data);  cb->on_send(status, status < 0 ? uv_last_error(req->handle->loop).code : 0, req_data->data(), req_data->context());  delete req_data;  delete req;}
开发者ID:luojunqiang,项目名称:libuv-java,代码行数:10,


示例27: ae_get_last_uv_error

VALUE ae_get_last_uv_error(void){  AE_TRACE();  VALUE ae_uv_error;  if (NIL_P(ae_uv_error = rb_hash_aref(AE_UV_ERRORS, INT2FIX(uv_last_error(AE_uv_loop).code))))    ae_uv_error = rb_hash_aref(AE_UV_ERRORS, INT2FIX(-1));  return ae_uv_error;}
开发者ID:ibc,项目名称:AsyncEngine,代码行数:10,


示例28: assert

void Connection::on_read_ssl(uv_stream_t* client, ssize_t nread, uv_buf_t buf) {#elsevoid Connection::on_read_ssl(uv_stream_t* client, ssize_t nread, const uv_buf_t* buf) {#endif  Connection* connection = static_cast<Connection*>(client->data);  SslSession* ssl_session = connection->ssl_session_.get();  assert(ssl_session != NULL);  if (nread < 0) {#if UV_VERSION_MAJOR == 0    if (uv_last_error(connection->loop_).code != UV_EOF) {#else    if (nread != UV_EOF) {#endif      connection->notify_error("Read error '" +                               std::string(UV_ERRSTR(nread, connection->loop_)) +                               "'");    } else {      connection->defunct();    }    return;  }  ssl_session->incoming().commit(nread);  if (ssl_session->is_handshake_done()) {    char buf[SSL_READ_SIZE];    int rc =  0;    while ((rc = ssl_session->decrypt(buf, sizeof(buf))) > 0) {      connection->consume(buf, rc);    }    if (rc <= 0 && ssl_session->has_error()) {      connection->notify_error("Unable to decrypt data: " + ssl_session->error_message(),                               CONNECTION_ERROR_SSL);    }  } else {    connection->ssl_handshake();  }}void Connection::on_timeout(Timer* timer) {  Handler* handler = static_cast<Handler*>(timer->data());  Connection* connection = handler->connection();  LOG_INFO("Request timed out to host %s on connection(%p)",           connection->host_->address_string().c_str(),           static_cast<void*>(connection));  // TODO (mpenick): We need to handle the case where we have too many  // timeout requests and we run out of stream ids. The java-driver  // uses a threshold to defunct the connection.  handler->set_state(Handler::REQUEST_STATE_TIMEOUT);  handler->on_timeout();  connection->metrics_->request_timeouts.inc();}
开发者ID:PlexChat,项目名称:cpp-driver,代码行数:55,


示例29: _term_write_cb

/* _term_write_cb(): general write callback.*/static void_term_write_cb(uv_write_t* wri_u, c3_i sas_i){  _u2_write_t* ruq_u = (void *)wri_u;  if ( 0 != sas_i ) {    uL(fprintf(uH, "term: write: %s/n", uv_strerror(uv_last_error(u2L))));  }  free(ruq_u->buf_y);  free(ruq_u);}
开发者ID:gunnarahlberg,项目名称:urbit,代码行数:13,


示例30: on_read

void on_read(uv_stream_t* tcp, ssize_t nread, uv_buf_t buf) {  uv_err_t err = uv_last_error();  if (nread > 0) {    output_used += nread;  } else if (nread < 0) {    if (err.code == UV_EOF) {      uv_close((uv_handle_t*)tcp, close_cb);    }  }}
开发者ID:dakatsuka,项目名称:node,代码行数:11,



注:本文中的uv_last_error函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ uv_listen函数代码示例
C++ uv_is_closing函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。