A párhuzamossággal a továbbiakban ritkán fogunk foglalkozni. Hogy ne maradjon ki teljesen ennek jellegzetes problémavilága, az alábbiakban egy tanulságos példán keresztül vizsgálódunk. Nézzük meg, mit kell tennie egy metróvezetőnek a metróállomáson!
Metróvezető:
Nyisd ki az ajtókat ÉS KÖZBEN mondd be az állomás nevét!
ISMÉTELD: Nézd a peront AMÍG van még beszálló!
Mondd, hogy az ajtók záródnak!
Csukd be az ajtókat!
Indulj ÉS KÖZBEN mondd be a következő állomás nevét!
Vége.
Ebben a példában tehát kimondottan párhuzamosan elvégzendő tevékenységeket adtunk meg, amelyeket az ÉS KÖZBEN szópár köt össze.
Párhuzamosan zajló események algoritmizálása közben (röviden: párhuzamos környezetben) szükség lehet egyes folyamatok várakoztatására a részfolyamatok szinkronizálódása érdekében. Ezt láthatjuk a következő algoritmusvariációban.
Metróvezető:
Nyisd ki az ajtókat ÉS KÖZBEN mondd be az állomás nevét!
ISMÉTELD: Nézd a peront AMÍG van még beszálló és
a várakozási idő≤1 perc!
Mondd, hogy az ajtók záródnak!
Csukd be az ajtókat!
Indulj ÉS KÖZBEN mondd be a következő állomás nevét!
Vége.
Nemcsak elemi tevékenységek végezhetők párhuzamosan, hanem tetszőleges összetett (több utasítást tartalmazó) programstruktúrák is:
Metróvezető:
Nyisd ki az ajtókat ÉS KÖZBEN mondd be az állomás nevét!
ISMÉTELD: Nézd a peront ÉS KÖZBEN
HA a várakozási idő>1/2 perc AKKOR mondd: igyekezzenek!
AMÍG van még beszálló és a várakozási idő≤1 perc!
Mondd, hogy az ajtók záródnak!
Csukd be az ajtókat!
Indulj ÉS KÖZBEN mondd be a következő állomás nevét!
Vége.
![]() ![]() |
![]() |
![]() |
A tananyag az ELTESCORM keretrendszerrel készült