Re:API changes in Snow Leopard
by 9oliYQjP on Friday August 28, 2009 @05:55PM
(#792365)
I'm not sure why you got down voted to 0 for asking a legitimate question. The block objects are part of Grand Central Dispatch. A programmer tags an isolated unit of work as a block. The OS then takes these blocks and schedules them into execution queues. While the compiler adds support for defining the blocks themselves, OS X 10.6 provides purpose to these blocks. Just like you can have a VM which supports threads on an OS that itself is not multi-threaded, the feature would be pretty useless if only the compiler were updated as it has been for 10.6
[ Parent
| on HN ]
It also needs the instantiation support at the VM/runtime level, which is separate from the services the OS itself provides.
So blocks need to be supported at the compiler level, in the Objective-C runtime and in OS-wide processes (which would be Grand Central itself).