Creates a fixed-size thread pool.
number of worker threads (must be > 0).
Result.ok(pool), or Result.error(ThreadPoolError.INVALID_ARGUMENT) when poolSize is not positive.