Usage

If below code will work, your job is done.
        
            const queue = new TaskManager();

            queue.addTask('first task', function () {
                this.alert('ble ble');
            }, window);

            queue.addTask('second task', function () {
                this.alert('bla bla');
            }, window);

            queue.run(); // it calls all callbacks

            queue.getTaskList(); // it return list of tasks

            queue.clean(); // it remove all tasks