Patron is a multi-consumer/multi-producer thread pooling library written in Common Lisp with flexibility and performance in mind. You simply create a `PATRON' with a job queue of fixed size, specify a fixed number of `WORKER' threads and start submitting your `JOB's into the work queue.
While Patron is written in portable Common Lisp in mind, because of some platform specific features (semaphores, missing threading features -- `THREAD-JOIN', `WITHOUT-INTERRUPTS', etc. -- in bordeaux-threads, `WITH-TIMEOUT' macro.) used, it currently works on SBCL and CCL platforms. As a side note, Patron currently depends on bordeaux-threads library for common threading functionalities.
For more information about the project and example code see README file.
Download ASDF package from http://www.students.itu.edu.tr/~yazicivo/files/patron.tar.gz (Tarball comes with the latest .git source tree. Feel free to play with it. You may also prefer visiting Patron on GitHub.)
This page is linked from: evol
CLiki pages can be edited by anyone at any time. Imagine a fearsomely comprehensive disclaimer of liability. Now fear, comprehensively