GCD works by allowing specific tasks in a program that can be run in parallel to be queued up for execution and, depending on availability of processing resources, scheduling them to execute on any of the available processor cores[REF][REF] (referred to as "routing" by Apple) [REF].
A task in Grand Central Dispatch can be used either to create a work item that is placed in a queue or assign it to an event source.