Grand Central Dispatch
Grand Central Dispatch | |
---|---|
Základní data
| |
Správce | Apple Inc. |
vývojář | Apple Inc. |
Aktuální verze | 1.0 (11. září 2009) |
operační systém | macOS , iOS , tvOS , watchOS , Unix |
Licence | Licence Apache 2.0 |
Německy mluvící | Ne |
libdispatch.macosforge.org |
Grand Central Dispatch ( GCD ) je softwarová technologie a programovací rozhraní , která byla vyvinuta Dave Zarzycki na Apple s cílem zlepšit podporu několika hlavních procesorů nebo procesorových jader přes abstrakci . Zdrojový kód pro integraci služby Grand Central Dispatch, libdispatch byla zveřejněna Apple dne 10. září 2009.
Grand Central Dispatch byl původně navržen tak, aby vývojářům softwaru v systému macOS (dříve „Mac OS X“), počínaje Mac OS X Snow Leopard (10.6, 2009), usnadnil používání více jader procesoru. Byl to jen logický krok poté, co byl v době svého vzniku prodán téměř každý vícejádrový procesor Apple . Základním konceptem technologie je oddělit, zpracovat úkoly ( úkoly , které jsou pak spravovány GCD a distribuovány dostupným procesorům, které mají být definovány). Výhodou je, že vývojáři nemusí znát podrobnosti multithreadingu, aby mohli implementovat jednoduché paralelní úkoly , a že Grand Central Dispatch pracuje nezávisle na počtu procesorových jader - to významně snižuje programátorské úsilí vývojáře.
Grand Central Dispatch je založen na stejných principech jako Microsoft Task Parallel Library pro platformu .NET , Sun's Concurrency API pro Java a Intel Threading Building Blocks .
Portování do jiných operačních systémů
26. září 2009 byla oznámena dostupnost libdispatch na FreeBSD 8.1. Také MidnightBSD 0,3-CURRENT zahrnuje libdispatch.
Aktuální zdrojový kód projektu libdispatch je kompilován a funguje také pod Linuxem. Bylo již navrženo jako balíček pro na Debian distribuce.
Windows podporují dvě vidlice , které najdete na opensource.mlba-team.de a Github . Cílem je integrovat libdispatch jako originální součást kakaa do jiných rámců , jako je Qt .
Viz také
- Paralelní knihovna Microsoft Task
- Java Concurrency API
- Intel Threading Building Blocks
- OpenCL
- OpenMP
webové odkazy
Individuální důkazy
- ↑ Apple ukazuje vývojářům Mac OS X Snow Leopard , 9. června 2008, anglicky
- ↑ Libdispatch publikován 10. září 2009 v angličtině
- ↑ WWDC 2008: Co je nového v systému Mac OS X Snow Leopard ( Memento na originálu z 17. října 2008 v Internet Archive ) Info: archiv odkaz se automaticky vloží a dosud nebyly kontrolovány. Zkontrolujte prosím původní a archivovaný odkaz podle pokynů a poté toto oznámení odstraňte. , 18. června 2008, anglicky
- ↑ LibCDispatch GCD s podporou bloků pracující na FreeBSD , 26. září 2009, anglicky
- ↑ libdispatch , 14. srpna 2010, anglicky
- ↑ seznam adresátů libdispatch: „Stav přenosu“ 10. dubna 2011, anglicky
- ↑ Balíček: libdispatch0
- ↑ seznam adresátů libdispatch: „libdispatch pro Win32“ 22. dubna 2011, anglicky
- ↑ seznam adresátů libdispatch: „Aktualizace týkající se stavu libdispatch v systému Windows“ 5. května 2011, anglicky
- ↑ Qt Integration , 7. května 2013, anglicky