enqueue(task) {
        if (this.isTerminationStarted) {
            // don't add anything new to the queue
            return this.checkShutdown();
        }
        this.pendingTasksQueue.enqueue(task);
        this.processQueue();
    }
Adds the call to the queue, then triggers a processing of the queue.

@param {Task} task
@private
@returns {*}