Skip to content

Instantly share code, notes, and snippets.

@ddeveloperr
Created February 10, 2018 08:41
Show Gist options
  • Select an option

  • Save ddeveloperr/f91e85649e31285c16be9f6fc148a8cb to your computer and use it in GitHub Desktop.

Select an option

Save ddeveloperr/f91e85649e31285c16be9f6fc148a8cb to your computer and use it in GitHub Desktop.
Primjer Asynchronog rada Javascripta
// Primjer Asynchronog rada Javascripta
function printHello() {
console.log(`I na kraju, primamo selame i tople pozdrave iz
printHello funkcije !`);
}
function blockFor1Sec() {
// Blokiramo JS thread, radimo bilo sta...
const tajnaAsynchronogJs =
`Pauza, odmori malo!
Pauza, odmori jos malo!
Nek se zna ko je gazda vazda!
Ja sam funkcija blockFor1Sec(),
Iako sam pozvana poslije setTimeout() koji je
setovan na 0ms ipak ja imam prednost u threadu!
Ja blokiram "Call Stack", zezam se, vrtim
cooliram...
Tek kad ja zavrsim i oslobodim "Call Stack"
setTimeout, koji je pozvao printHello metodu moze
izaci iz dosadnog reda za cekanje "Callback Queue"-a
i uci na "Call Stack"!
Ali i printHello mora sacekati console.log() metodu koja
vam salje pozdrave i selame od AsynchronogJS-a!
U tome je sustina Asynchronog rada Javascripta!`;
console.log(tajnaAsynchronogJs);
}
setTimeout(printHello, 0);
blockFor1Sec();
console.log("Ja sam takodjer prije printHello funkcije, sad znate i zasto!");
// Resosljed izvrsavanja
// 1. blockFor1Sec();
// 2. console.log("Ja sam takodjer prije printHello funkcije, sad znate i zasto!");
// 3. setTimeout(printHello, 0);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment