Skip to content

Comment on Async/await support in Firefoxparent

Comments

Am I missing something? Await doesn't block. It's just syntactic sugar for Promise.then(() => {}) without having to go down into callback hell.

It makes code more readable and easier to write, but doesn't fundamentally change how it is working under the hood, as far as I am aware.

  var txt = await read();
  // This code is blocked until read() completes.
  console.log(txt);

It is in essence:

    read((err, txt) => {
        console.log(txt)
    })
Or
     read().then((txt) => console.log(txt))
Why is it bad?

Await doesn't synchronously block in Javascript.

http://docs.scala-lang.org/overviews/core/futures.html#block...

And how do you suggest to do that without "blocking"? :) Sure, you could use a stream but that isn't always possible or practical.

That's not what blocking means.

Well, it depends...

async function is blocked on await statement, after all that's why it has such a name.

It does not block the whole VM but task (async function) is effectively blocked for an observer inside it.

Yes but when you talking about async/await, "blocking" means "blocking the thread". And this is very clearly what mehwoot meant.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.