public List<Task> batchPollTasksByTaskType(
            String taskType, String workerId, int count, int timeoutInMillisecond) {
        Validate.notBlank(taskType, "Task type cannot be blank");
        Validate.notBlank(workerId, "Worker id cannot be blank");
        Validate.isTrue(count > 0, "Count must be greater than 0");

        Object[] params =
                new Object[] {
                    "workerid", workerId, "count", count, "timeout", timeoutInMillisecond
                };
        List<Task> tasks = getForEntity("tasks/poll/batch/{taskType}", params, taskList, taskType);
        tasks.forEach(this::populateTaskPayloads);
        return tasks;
    }
Perform a batch poll for tasks by task type. Batch size is configurable by count.

@param taskType Type of task to poll for
@param workerId Name of the client worker. Used for logging.
@param count Maximum number of tasks to be returned. Actual number of tasks returned can be
    less than this number.
@param timeoutInMillisecond Long poll wait timeout.
@return List of tasks awaiting to be executed.
client/src/main/java/com/netflix/conductor/client/http/TaskClient.java