libuv / help

Need help with libuv? Post your question here.
28 stars 7 forks source link

multi-threaded udp server (`uv_write2`+`uv_udp_t`) #175

Open FelipeLema opened 3 years ago

FelipeLema commented 3 years ago

hey, there

I'm building up a UDP server using libuv that uses threads to answer. I could only get pieces of code (single-threaded UDP server, using work queues...), though nothing self-contained with this premise.

I also found a recommendation of modifying the test/benchmark-multi-accept.c code, which is what I'm currently working on.

However, I got to the part where uv_write2 is called and is supposed to receive a uv_stream_t* casted from a uv_tcp_t*. I'm currently using uv_udp_t so I don't know if it makes sense to cast it to uv_stream_t*. If it doesn't correspond, how/what should I give to the worker threads to respond to UDP packages arriving?

FelipeLema commented 3 years ago

I read in the docs that UDP sockets cannot be passed to threads using pipes... am I reading correctly?