Háttérfolyamatok az Imagine-ben
Cikkünkben a különböző háttérfolyamatokban rejlő lehetőségeket kívánjuk bemutatni, egy egyszerű példán keresztül.
A háttérfolyamatok megismerése előtt lássunk egy egyszerű rajzolási
feladatot!
Rajzoltassunk
meg a teknőccel egy óriáskereket! Ezt például megvalósíthatjuk úgy, hogy megkérjük a teknőcöt, menjen előre valamennyi lépést,
rajzoljon egy kitöltött kört, lépjen hátra a kiindulási helyére, majd forduljon
jobbra valamekkora szöggel. Mindezt annyiszor hajtjuk végre, hogy a teknőc egy teljes
kört (360 fokot) járjon be.
Az itt látható kép megrajzolásához, mi a következő parancsot használtuk:
törölkép ismétlés 36 [előre 80 töltöttkör 10 hátra 80 jobbra 10 várj 1000]
clearscreen repeat 36 [forward 80 filledcircle 10 back 80 right 10 wait 1000]
(Kékkel a magyar, sötétlila színnel az angol parancsokat jelöljük.)
Ebben a példában először letöröljük a képernyőt (törölkép - clearscreen), majd 36-szor végrehajtatjuk a megfelelő parancsokat. A várj (wait) parancsot azért használjuk, hogy jobban nyomon követhessük a rajzolás folyamatát.
A fenti animációban is látszik, hogy amíg a teknőc rajzol, a parancssorba nem
tudunk újabb parancsot begépelni. Ha nem akarjuk kivárni, míg a parancs
végrehajtódik, akkor azt az
ikon
megnyomásával megállíthatjuk.
Pedig milyen jó lenne, ha a rajzolás közben a toll színét, vagy más paramétereket is megváltoztathatnánk, így az hatással lehetne a rajzra.
A megoldás az lehet, ha önálló háttérfolyamatként indítjuk el a parancsokat. Ennek formája a következő:
(indít [parancslista] "folyamatnév))
(launch [parancslista] "folyamatnév))
Vagyis annyit kell tennünk, hogy az előbbi parancsot, az indít (launch) parancs után írjuk szögletes zárójelek közé, majd megadunk egy nevet is, amellyel később hivatkozhatunk a folyamatra. Mi most az óriáskerék nevet adjuk a folyamatnak. Vagyis a következő parancsot kell kiadnunk:
(indít [törölkép ismétlés 36 [előre 80 töltöttkör 10 hátra 80 jobbra 10 várj 1000]] "óriáskerék)
(launch [clearscreen repeat 36 [forward 80 filledcircle 10 back 80 right 10 wait 1000]] "óriáskerék)
Itt már jól látható, hogy miközben a teknőc rajzol, mi a toll színét is meg tudjuk változtatni, de természetesen más parancsokat is kiadhatunk.
Ha kíváncsiak vagyunk arra, hogy milyen folyamatok futnak a háttérben, akkor használhatjuk a kiír mindenfolyamat (print allprocesses) parancsot. Eredményül a háttérben futó folyamatok nevét kapjuk meg, illetve aa nem adtunk nevet a folyamatnak, akkor magát a parancslistát kell látnunk.
A példánkban jól látható, hogy az óriáskerék nevű folyamat mellett egy @parancsok nevű folyamat is fut a háttérben. Ez teljesen normális, hiszen ez a folyamat a parancssor működésért felelős az IMAGINE-ben. A feladata az, hogy a parancssorban egy parancsra várjon, és az Enter lenyomása után végrehajtsa azt. Ezt a folyamatot nem tudjuk leállítani.
A
többi háttérfolyamatot a mindent megállít ikonnal, vagy a stopmind
(stopall)paranccsal tudjuk megállítani.
Ha csak egy megadott nevű folyamatot akarunk megállítani, akkor használhatjuk a mégsem "folyamatnév (cancel "folyamatnév) parancsot. Például mégsem "óriáskerék (cancel "óriáskerék).
Következő oldal (további háttérfolyamatok)