Sobes.tech
Junior — Middle

Siz asinxron dasturlash tushunchasini tushuntirib berishingiz mumkinmi va u sinxron yondashuvdan qanday farq qiladi?

sobes.tech AI

AIdan javob

Asinxron dasturlash, vaqt oladigan operatsiyalarni (masalan, tarmoqdan ma'lumotlarni yuklash) dastur asosiy bajarish oqimini bloklamasdan bajarishga imkon beradi. Bu, dastur uzoq davom etadigan vazifa bajarilayotgan paytda ham ishlashda davom etishi va foydalanuvchi harakatlariga javob berishi mumkinligini anglatadi.

Sinkron yondashuvda, kod bajarilishi ketma-ket bo'lib, dastur bir operatsiya tugashini kutadi va keyingisiga o'tadi, bu esa interfeysning to'xtashiga olib kelishi mumkin.

Flutterda, asinxron dasturlash uchun async va await so'zlari ishlatiladi:

Future<String> fetchData() async {
  // kechikishni simulyatsiya qilish
  await Future.delayed(Duration(seconds: 2));
  return 'Ma'lumotlar yuklandi';
}

void main() async {
  print('Yuklash boshlanmoqda');
  String data = await fetchData();
  print(data);
}

Bu yerda, fetchData asinxron ravishda bajariladi, asosiy oqimni bloklamaydi.