Skip to main content

Synchronous Vs Asynchronous

Synchronous:


  • Blocking, single-threaded
  • only one operation can progress at a time
  • code is executed sequentially from top to bottom, blocking on long running tasks such as network req. and disk I/O.
  • result wait and execute sequentially.
  • Highly readable code
  • easy to implement logic
  • cost effective, convenient
  • strictly technology based, demandes high speed internet, internet connection, local time barriers, requires careful planning.
  • eg: php, java, python

Asynchronous

  • Normal js which has some ajax calls which dynamically load data from server without affecting the current flow of execution.
  • no wait for result and execute sequentially.
  • using asynchronous js (such as callbacks, promises and async/wait), you can perform long network req. without blocking the main thread.
  • fast execution
  • eg: reactive programming
  • hard to implement logic
  • eg: javascript, typescript
  • no result wait so hard to handle result
  • asynchronous result handle (use callback, promise, observable)
  • async/await treat js async function as a sync function.

Comments

Popular posts from this blog

NodeJS: Request and Respose Objects

# req Objects - req - req.body, req.queries, req.validationerrors - res.headers, req.users, req.file, req.assert - req.params, req.checkbody #res Objects - res.send, res.end, res.json, res.render, res.status, res.sendStatus # - .limit(4) //limit only upto 4 docs - skips(3) //skip first 3 docs - exe //query build and then execute, it is also callback function of mongoose. - sort({_id: -1}) //for decending order - populate('userId') //populating data inside the reference.

Javascript: Object to Array and Array to Object

Output: Final Array [ { mango: 1 }, { apple: 2 }, { banana: 3 }, { orange: 1 }, { watermelon: 1 }, { papaya: 1 } ] Output: Final Object { mango: 1, apple: 2, banana: 3, orange: 1, watermelon: 1, papaya: 1 }

Github Tutorial

GitHub brings together the world's largest community of developers to discover, share, and build better software. Delivered through software as a service(SAAS) business model 2008 by linus (Owner: Microsoft)  #Create New Repository in Github New Repository Add Repository Name and description Public / Private, initialize this repo with Read Me Create repository create a new repository on the command line echo "#test" >> README.md git init git add README.md git commit -m "first commit" git remote add origin https://github.com/sinuna/test.git git push -u origin master …or push an existing repository from the command line git remote add origin https://github.com/sinuna/firstRepository.git git push -u origin master …or import code from another repository You can initialize this repository with code from a Subversion, Mercurial, or TFS project. Initialize Repo $ git init Clone Repo $ git clone https://github.com...