Skip to content

Add asynchronous work API to the network manager

Ondřej Surý requested to merge ondrej/rewrite-masterdump-to-uv-threadpool into main

The libuv has a support for running long running tasks in the dedicated threadpools, so it doesn't affect networking IO.

This commit adds isc_nm_work_enqueue() wrapper that would wraps around the libuv API and runs it on top of associated worker loop.

The only limitation is that the function must be called from inside network manager thread, so the call to the function should be wrapped inside a (bound) task.

Merge request reports