Welcome to the libdispatch project!
The libdispatch project consists of the user space implementation of the Grand Central Dispatch API as seen in Mac OS X version 10.6 Snow Leopard. The Mac OS X kernel support for GCD may be found in the xnu project. While kernel support provides many performance optimizations on Mac OS X, it is not strictly required for portability to other platforms. However, in order to implement the full API for Grand Central Dispatch, C compiler support for blocks is required. The blocks runtime is available as part of the LLVM project.
This project is intended to be a resource for developers interested in learning more about libdispatch on Mac OS X. Contributions to this project will be continually evaluated for possible inclusion in future releases of Mac OS X. The sources are available under the terms of the Apache License, Version 2.0 in the hope that they might serve as a launching point for porting GCD to other platforms.
We recognize that libdispatch is a new technology and you likely have many questions. Here are some documentation resources for getting started:
- Introducing Blocks and Grand Central Dispatch
- Concurrency Programming Guide
- Grand Central Dispatch (GCD) Reference
Feel free to direct any questions you may have to the new email discussion list:
The GCD team