-### `pool.destroy()`
-
-Destroy method is available on both pool implementations.
-This method will call the terminate method on each worker.
-
-### `class YourWorker extends ThreadWorker`
-
-`fn` (mandatory) The function that you want to execute on the worker thread
-`opts` (optional) An object with these properties:
-
-- `maxInactiveTime` - Max time to wait tasks to work on ( in ms) , after this period the new worker threads will die.
-- `async` - true/false, true if your function contains async pieces else false
-
-## Choose your pool
-
-Performance is one of the main target of these thread pool implementations, we want to have a strong focus on this.
-We already have a bench folder where you can find some comparisons.
-To choose your pool consider that with a FixedThreadPool or a DynamicThreadPool (in this case is important the min parameter passed to the constructor) your application memory footprint will increase.
-Increasing the memory footprint, your application will be ready to accept more CPU bound tasks, but during idle time your application will consume more memory.
-One good choose from my point of view is to profile your application using Fixed/Dynamic thread pool, and to see your application metrics when you increase/decrease the num of threads.
-For example you could keep the memory footprint low choosing a DynamicThreadPool with 5 threads, and allow to create new threads until 50/100 when needed, this is the advantage to use the DynamicThreadPool.
-But in general, **always profile your application**