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.