// the find
karlhiramoto/libworkqueue
Cross platform, threaded priority work queue scheduler library in C, with optional C++ wrapper. Run jobs based on priority, and/or scheduled time. Tested on Linux, Windows, BSD, OpenSolaris. Schedule jobs based on priority, and X milliseconds in the future. Can also be used as a worker thread pool.
A C library that runs queued jobs on a worker thread pool, ordered by priority and by a scheduled delay in milliseconds. It suits developers who need a small dependency for periodic work, serializing calls to a synchronous API, or capping thread count, rather than a full task framework.
One queue handles both priority ordering and delayed execution, so periodic jobs and one-shot priority work share the same pool. The examples directory covers real cases (periodic_test, high_load_test, time_sort, job_control, serial_port_test), which is more than many libraries this size ship. The tree includes a lib/win32 stdbool.h shim for MSVC, so the Windows target was handled at the source level, not just in the build files.
The last push was April 2017, and the Travis badge points at travis-ci.org, which no longer runs builds, so there is no sign of CI or maintenance in roughly nine years. The build story is autotools plus a VS2008 solution, with Windows verified only on XP SP3. The visible tree has no CMake, no pkg-config file, and no test directory, which makes it harder to consume from a modern toolchain or check in CI. The README says nothing about throughput, thread-safety guarantees, or shutdown behavior, so anyone using it as a thread pool has to read lib/workqueue.c to learn whether a queued job can be cancelled or whether a blocked job stalls the pool.