Co je řetězení?
Řetězeni vám umožňuje mít více věsí spuštěných ve stejnou dobu. Taky vám to umožňuje mít ve vašich funkcích pauzy a čekání aniž by se navzájem rušily! Teď se pojďme podívat na nějaké ukázky a jak nám mohou pomoci!
Více Funkcí
Řetězení vám umožní spustit více funkci ve stejnou dobu. Níže je malý příklad.
main()
{
casovaUdalostJedna(); // napred spusti casovou udalost jedna
// Ted to napise "3 sekundy" casovaUdalostDva(); // jako dalsi spusti casovou udalost dva // Ted to napise "8 sekund" } casovaUdalostJedna()
{ wait 3;
iprintln("3 sekundy");
}
casovaUdalostJedna()
{
wait 5;
iprintln("8 sekund");
}
V příkladu výše skript spustí "casovaUdalostJedna()" a počká 3 sekundy. Napíše zprávu a vrátí se zpět do funkce"main()" pro spuštění "casovaUdalostDva()". Pak počká 5 sekund, napíše zprávu a vrátí se do funkce "main()". Celou fukci "main()" udělá za 8 sekund! Řetězení vám umožní snížít to na 5! Tu je ten samý příklad, ale "casovaUdalostJedna()" a "casovaUdalostDva()" jsou řetězeny.
main()
{
thread casovaUdalostJedna(); // napred spusti casovou udalost jedna
// Ted to napise "3 sekundy" casovaUdalostDva(); // jako dalsi spusti casovou udalost dva // Ted to napise "8 sekund" } casovaUdalostJedna()
{ wait 3;
iprintln("3 sekundy");
}
casovaUdalostJedna()
{
wait 5;
iprintln("8 sekund");
}
Tady je malá tabulka, která vám ukáže, v jakém pořadí to bylo spuštěno.
Neřetězeno |
|
Řetězeno |
main(] |
main() |
| |
|
| |
|
casovaUdalostJedna |
casovaUdalostJedna() |
|
casovaUdalostDva() |
| |
| |
|
| |
čeká 3 sekundy |
čeká 3 sekundy |
|
čeká 5 sekund |
| |
| |
|
| |
napíše zprávu |
napíše zprávu |
|
napíše zprávu |
| |
|
|
| |
main() |
main; |
| |
|
casovaUdalostDva() |
| |
čeká 5 sekund |
| |
napíše zprávu |
| |
main() |
| |
KONEC |