Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A C++ egyidejűségi futtatókörnyezete segít robusztus, méretezhető és rugalmas párhuzamos alkalmazások írásában. Növeli az absztrakció szintjét, hogy ne kelljen kezelnie az egyidejűséggel kapcsolatos infrastruktúra-részleteket. Emellett olyan ütemezési szabályzatokat is megadhat, amelyek megfelelnek az alkalmazások szolgáltatási igényeinek. Ezekkel az erőforrásokkal megkezdheti az egyidejűségi futtatókörnyezet használatát.
A referenciadokumentációt lásd: Referencia.
Jótanács
Az egyidejűségi futtatókörnyezet nagymértékben támaszkodik a C++11 funkciókra, és a modernebb C++ stílust alkalmazza. További információkért olvassa el a Welcome Back to C++ (Üdvözli a C++-hoz) című cikket.
Az egyidejűségi futtatókörnyezet szolgáltatásainak kiválasztása
| Cikk | Leírás |
|---|---|
| Áttekintés | Bemutatja, hogy miért fontos az egyidejűségi futtatókörnyezet, és ismerteti annak főbb funkcióit. |
| Összehasonlítás más egyidejűségi modellekkel | Bemutatja, hogyan hasonlítja össze az egyidejűségi futtatókörnyezet más egyidejűségi modelleket, például a Windows-szálkészletet és az OpenMP-t, hogy az alkalmazás követelményeinek leginkább megfelelő egyidejűségi modellt használhassa. |
| Migrálás az OpenMP-ről az egyidejűségi futtatókörnyezetbe | Összehasonlítja az OpenMP-et az egyidejűségi futtatókörnyezetgel, és példákat nyújt arra, hogyan migrálható a meglévő OpenMP-kód az egyidejűségi futtatókörnyezet használatára. |
| Párhuzamos minták kódtára (PPL) | Bemutatja a PPL-t, amely párhuzamos hurkokat, feladatokat és párhuzamos tárolókat biztosít. |
| Aszinkron ügynökök könyvtára | Bemutatja, hogyan használhat aszinkron ügynököket és üzenetátadást, hogy egyszerűen beépítse az adatfolyamokat és a pipelining feladatokat az alkalmazásokba. |
| Feladatütemező | Bemutatja a Feladatütemezőt, amely lehetővé teszi az egyidejűségi futtatókörnyezetet használó asztali alkalmazások teljesítményének finomhangolását. |
Feladat-párhuzamosság a PPL-ben
| Cikk | Leírás |
|---|---|
|
Feladat-párhuzamosság Útmutató: Párhuzamos rendezési rutin írása parallel_invoke használatával Útmutató: Párhuzamos műveletek végrehajtása parallel_invoke használatával Útmutató: Késés után befejezett feladat létrehozása |
A tevékenységek és tevékenységcsoportok leírása, amelyek segítségével aszinkron kódot írhat, és a párhuzamos munka kisebb részekre bontható. |
| Útmutató: Futures implementálása | Bemutatja, hogyan kombinálhatja a Concurrency Runtime funkcióit további műveletekhez. |
| Útmutató: Hogyan távolítsuk el a munkát egy User-Interface szálból | Bemutatja, hogyan helyezheti át az MFC-alkalmazások felhasználói felületi szála által végzett munkát egy feldolgozói szálra. |
|
Ajánlott eljárások a párhuzamos minták könyvtárában Általános ajánlott eljárások az egyidejűségi futtatókörnyezetben |
Tippeket és ajánlott eljárásokat kínál a PPL használatához. |
Adat-párhuzamosság a PPL-ben
| Cikk | Leírás |
|---|---|
|
Párhuzamos algoritmusok Útmutató: parallel_for ciklus írása Hogyan írjunk parallel_for_each ciklust Útmutató: Térkép- és csökkentési műveletek végrehajtása párhuzamosan |
Ez a cikk ismerteti a parallel_for, parallel_for_each, parallel_invoke és más párhuzamos algoritmusokat. Párhuzamos algoritmusok használatával megoldhatja az adat-párhuzamos problémákat, amelyek adatgyűjteményeket foglalnak magukban. |
| párhuzamos tárolók és objektumok Útmutató: Párhuzamos tárolók használata a hatékonyság növeléséhez Útmutató: Kombinálható eszközök használata a teljesítmény javítása érdekében Útmutató: Kombinálható készletek kombinálása |
Az combinable osztályt, valamint concurrent_vector, concurrent_queue, concurrent_unordered_map és más párhuzamos tárolókat ismerteti. Párhuzamos tárolókat és objektumokat akkor használjon, ha olyan tárolókra van szükség, amelyek szálbiztos hozzáférést biztosítanak az elemeikhez. |
|
Ajánlott eljárások a párhuzamos minták könyvtárában Általános ajánlott eljárások az egyidejűségi futtatókörnyezetben |
Tippeket és ajánlott eljárásokat kínál a PPL használatához. |
Feladatok és párhuzamos algoritmusok megszakítása
| Cikk | Leírás |
|---|---|
| Lemondás a PPL-ben | A lemondás szerepét ismerteti a PPL-ben, beleértve a lemondási kérelmek kezdeményezésének és megválaszolásának módját. |
|
Útmutató: Hogyan használjuk a feladat lemondását egy párhuzamos ciklus megszakításához Hogyan lehet kivételkezeléssel megszakítani egy párhuzamos ciklust |
Két módszert mutat be az adat-párhuzamos munka megszakítására. |
Univerzális Windows Platform-alkalmazások
| Cikk | Leírás |
|---|---|
| Aszinkron műveletek létrehozása C++ nyelven UWP-alkalmazásokhoz | Néhány fontos szempontot ismertet, amelyet szem előtt kell tartani, amikor az egyidejűségi futtatókörnyezettel aszinkron műveleteket hoz létre egy UWP-alkalmazásban. |
| Útmutató: Csatlakozás feladatok és XML HTTP-kérések használatával | Bemutatja, hogyan kombinálhatja a PPL-feladatokat a IXMLHTTPRequest2 és IXMLHTTPRequest2Callback felületeikkel, hogy HTTP GET és POST kéréseket küldjön egy webszolgáltatásba egy UWP-alkalmazásban. |
| Windows-futtatókörnyezeti alkalmazásminták | Letölthető kódmintákat és demóalkalmazásokat tartalmaz a Windows Runtime-hoz. |
Adatfolyam-programozás az aszinkron ügynökök könyvtárában
Kivételkezelés és hibakeresés
| Cikk | Leírás |
|---|---|
| Kivételkezelés | Ismerteti, hogyan használható a kivételek az egyidejűségi futtatókörnyezetben. |
| Párhuzamos diagnosztikai eszközök | Bemutatja, hogyan finomhangolhatja az alkalmazásokat, és hogyan használhatja a leghatékonyabban az egyidejűségi futtatókörnyezetet. |
Teljesítmény finomhangolása
| Cikk | Leírás |
|---|---|
| Párhuzamos diagnosztikai eszközök | Bemutatja, hogyan finomhangolhatja az alkalmazásokat, és hogyan használhatja a leghatékonyabban az egyidejűségi futtatókörnyezetet. |
|
Ütemezőpéldányok Hogyan kell: Ütemezőpéldányt kezelni Ütemezési Szabályzatok Útmutató: Adott ütemezőszabályzatok megadása Útmutató: Adott ütemezőszabályzatokat használó ügynökök létrehozása |
Bemutatja, hogyan működjön együtt az ütemezőpéldányokkal és ütemezési házirendekkel. Asztali alkalmazások esetén az ütemezőszabályzatok lehetővé teszik bizonyos szabályok adott típusú számítási feladatokhoz való társítását. Létrehozhat például egy ütemezőpéldányt, amellyel bizonyos feladatokat emelt szintű szálprioritáson futtathat, és az alapértelmezett ütemező használatával futtathat más feladatokat a normál szálprioritáson. |
|
Csoportok ütemezése Útmutató: Ütemezési csoportok használata a végrehajtási sorrend befolyásolására |
Bemutatja, hogyan használhatja az ütemezési csoportokat a kapcsolódó tevékenységek összekapcsolására vagy csoportosítására. Előfordulhat például, hogy a kapcsolódó tevékenységek között magas fokú helyi közelítést igényel, ha ezek a tevékenységek ugyanazon processzorcsomóponton történő végrehajtásból profitálnak. |
| Egyszerűsített feladatok | Ismerteti, hogy az egyszerűsített feladatok milyen hasznosak olyan munka létrehozásához, amely nem igényel terheléselosztást vagy -törlést, és hogyan használhatók a meglévő kódnak az egyidejűségi futtatókörnyezettel való használatához való módosításához. |
|
Környezetben Útmutató: A Context osztály használata a kooperatív szemafor implementálásához Útmutató: Túl előfizetés használata a késleltetés csökkentéséhez |
Ismerteti, hogyan szabályozható az egyidejűségi futtatókörnyezet által felügyelt szálak viselkedése. |
|
memóriakezelési függvények Útmutató: Az Alloc és a Free használata a memória teljesítményének javításához |
Az egyidejűségi futtatókörnyezet által biztosított memóriakezelési függvényeket ismerteti, amelyekkel egyidejűleg lefoglalhatja és felszabadíthatja a memóriát. |
További források
| Cikk | Leírás |
|---|---|
| Aszinkron programozási minták és tippek a Hilo-ban (Windows Áruházbeli alkalmazások C++ és XAML használatával) | Megtudhatja, hogyan használtuk az egyidejűségi futtatókörnyezetet az aszinkron műveletek implementálásához a Hilo-ban, egy Windows-futtatókörnyezeti alkalmazásban C++ és XAML használatával. |
| Párhuzamos programozás natív kódban blog | További részletes blogcikkeket tartalmaz a párhuzamos programozásról az egyidejűségi futtatókörnyezetben. |
| Párhuzamos számítástechnika a C++ és a natív kód fórumában | Lehetővé teszi, hogy részt vegyen az egyidejűségi futtatókörnyezettel kapcsolatos közösségi vitákban. |
| Párhuzamos programozás | Bemutatja a .NET-keretrendszerben elérhető párhuzamos programozási modellt. |