Perbedaan Synchronous dan Asynchronous

Omjebs > Tech > Perbedaan Synchronous dan Asynchronous

Perbedaan Synchronous dan Asynchronous

Banyak kita bertanya apa perbedaan dari async dan sync pada level programming?

secara tidak sadar juga kita pernah melihat atau mengimplementasikan code async dan sync.

Secara sederhana Synchronous adalah proses dieksekusi secara berurutan.

function methodSync ()  
{
     console.log("contoh Sync")
     console.log("1")
     console.log("2")
     console.log("3")
}

methodSync()

Jika kita menjalankan code program sederhana diatas, kita akan mendapatkan hasil / output yang berurutan yaitu:

$contoh Sync
$1
$2
$3

Secara sederhana Asynchronous adalah barisan proses yang dieksekusi tidak berurutan, yaitu melakukan proses tanpa menunggu proses sebelumnya selesai.

Contoh code sederhana:


async function methodAsync() {
    console.log("contoh Async")
    console.log("1")

    let promise = new Promise((resolve, reject) => {
        setTimeout(() => resolve("2"), 1000)
    });

    console.log("3")
    let result = await promise; // wait until the promise resolves (*)

    console.log(result); // "done!"
}

output dari code program sederhana itu adalah

$contoh Async
$1
$3
$2

Secara baris per baris kita melakukan progam print untuk 1,2,3 namun output kita mendapatkan 1,3,2. Nah, proses program ini adalah salah satu async dimana proses untuk memprint angka 3 tidak harus menunggu proses print angka 2 dulu.

Kapan digunakan Async, async digunakan saat melakukan operasi-operasi yang tidak harus menunggu proses yang lainnya selesai dulu. Anda akan banyak menemukan penggunaan proses Async ini saat manipulasi UI.

Kesimpulan

Yang perlu digarisbawahi adalah bagaimana cara kita untuk mengurutkan setiap baris-baris perintah agar dapat diproses dan dieksekusi sesuai tujuan.

Setiap kode yang akan dituliskan tidak selalu menggunakan synchronous ataupun asynchronous, itu selalu bergantung pada kebutuhan sebuah proses program.

0 0 vote
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x