Thread pool


Originally published at:
When work tasks are being produced, we often want to handle them in a thread pool. This is exceedingly easy in core.async. Channels are queues, and we can use the core.async/thread macro to create threads easily. If each loops through the tasks it gets from the queue, the work can be done in parallel.