I'm not sure what you mean by that but uv_write() is basically used like this:
uv_stream_t* stream = ...;
uv_write_t* req = malloc(sizeof(*req));
uv_buf_t buf = { .base = "test", .len = 4 };
int nbufs = 1;
int err = uv_write(req, stream, &buf, nbufs, write_cb);
Every write has a write request associated with it. Once the data has
been written out or when an error happens, your write callback gets
invoked.
That's all there is to it, really. You can send more than one buffer
with a single call but the common use case seems to be 'one buffer,
one call.'