typedef struct uv_udp_send_s uv_udp_send_t; typedef struct uv_fs_s uv_fs_t; typedef struct uv_work_s uv_work_t; typedef struct uv_random_s uv_random_t; 但是经过异步线程池的只有下面几种: typedef struct uv_getaddrinfo_s uv_getaddrinfo_t; typedef struct uv_getnameinfo_s uv_get...
我们可以总结出真正的系统调用返回值一般是存放在uv_fs_t.result. 写入文件与上述过程类似, 使用uv_fs_write即可.write 的回调函数在写入完成时被调用.. 在我们的程序中回调函数只是只是简单地发起了下一次读操作, 因此, 读写操作会通过回调函数连续进行下去. voidon_write(uv_fs_t *req) { uv_fs_req_clean...
uv_fs_read(uv_default_loop(), &read_req, open_req.result, buffer, sizeof(buffer), -1, on_read); } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 错误值通常保存在 errno 并可以通过 uv_fs_t.errorno 获取, 但是被转换成了标准的UV_* 错误码. 目前还没有方法直接从 errorno ...
int uv_fs_open(uv_loop_t* loop, uv_fs_t* req, const char* path, int flags, int mode, uv_fs_cb cb) flags和mode是标准的Unix标志。libuv负责转换为适当的Windows标志。关闭文件描述符可以用 int uv_fs_close(uv_loop_t* loop, uv_fs_t* req, uv_file file, uv_fs_cb cb) ...
* core: change uv_get_password uid/gid to unsigned (Jameson Nash) * hurd: unbreak build on GNU/Hurd (Vittore F. Scolari) * freebsd: use copy_file_range() in uv_fs_sendfile() (David Carlier) * test: use closefd in runner-unix.c (Guilherme Íscaro) ...
uv_resident_set_memory uv_uptime work queue uv_queue_work uv_cancel cpu info uv_cpu_info uv_free_cpu_info interface addresses uv_interface_addresses uv_free_interface_addresses file system uv_fs_req_cleanup uv_fs_close uv_fs_open uv_fs_t *req passed to callback uv_fs_read ...
* unix, windows: add uv_getrusage() function (Oleg Efimov) * win: minor error handle fix to uv_pipe_write_impl (Rasmus Pedersen) * heap: fix node removal (Keno Fischer) * win: fix C99/C++ comment (Rasmus Pedersen) * fs: vectored IO API for filesystem read/write (Benjamin Saunders...
{"name":"uv_udp_set_source_membership"}, {"name":"uv_udp_set_multicast_loop"}, {"name":"uv_udp_set_multicast_ttl"}, {"name":"uv_udp_set_multicast_interface"}, {"name":"uv_udp_set_broadcast"}, {"name":"uv_udp_set_ttl"}, {"name":"uv_udp_send"}, {"name":...
XX(UDP_SEND, udp_send) \ XX(FS, fs) \ XX(WORK, work) \ XX(GETADDRINFO, getaddrinfo) \ XX(GETNAMEINFO, getnameinfo) \ typedef enum { #define XX(code, _) UV_ ## code = UV__ ## code, UV_ERRNO_MAP(XX) #undef XX UV_ERRNO_MAX = UV__EOF - 1 } uv_errno...
(stderr,"error opening file: %s\n",uv_strerror(req->result));}}intmain(){loop=uv_default_loop();uv_idle_init(loop,&idler);uv_buf_t buf=uv_buf_init(buffer,1024);uv_fs_read(loop,&stdin_watcher,0,&buf,1,-1,on_type);uv_idle_start(&idler,crunch_away);returnuv_run(loop,UV_...