Exact use of task_info queue?

Hi, whats the exact use of the task_info queue? Since we already have num_workers number of index queues - one per worker to put the next index to be fetched from the sampler by that worker. The task-info queue is being populated when we put indices from the sampler to the workers index queue.
And, it is being popped when we need to return the next batch from the data loader.

populated :

popped :

So, Is it just used to store the out of order samples as hinted above right? And is not used for any other thing ?