G‘afarov, A. F. Galimyanov parallel hisobiyotlar qo'llanma Qozon


Download 1.46 Mb.
bet32/85
Sana24.12.2022
Hajmi1.46 Mb.
#1062519
1   ...   28   29   30   31   32   33   34   35   ...   85
Bog'liq
ParVychGafGal (1)

Samarali

foydalanish
bloklangan
MARKAZIY PROTSESSOR.

Ko'p ish zarrachalari ip boshqasidan javob kutayotganda foydali bo'ladi


kompyuter yoki uskunaning bir qismi. Bir ip esa


vazifa bajarilayotganda bloklaydi, boshqa ish zarralari mumkin


boshqa boshqarilmaydigan kompyuterdan foydalaning.


55

Machine Translated by Google

  1. Parallel dasturlash. Buni amalga oshiradigan kod

hisoblash intensiv, ko'p yadroli qurilmalarda tezroq ishlashi mumkin yoki ko'p protsessorli kompyuterlar, agar ish yuki bo'lsa
bir nechta iplar orasida taqsimlangan.

  1. So'rovlarni bir vaqtda qayta ishlash. Serverda mijoz so'rovlari

bir vaqtning o'zida kelishi mumkin, shuning uchun ularni qayta ishlash kerak

parallel.


Multithreading, shuningdek, rejalashtirishda resurs va protsessor xarajatlarini keltirib chiqaradi oqimlarni almashtirish. Multithreading har doim ham dasturni tezlashtirmaydi - bu noto'g'ri ishlatilsa, hatto ishlashni sekinlashtirishi mumkin.



    1. Tarmoqlarni yaratish va ishga tushirish. Ma'lumotlarni oqimga uzatish.

Thread sinf konstruktori yordamida mavzular yaratiladi ,
qayerdan boshlash kerakligini ko'rsatuvchi delegatni ThreadStart- ga o'tkazish ishlash. ThreadStart delegati shunday aniqlanadi:

umumiy delegat bekor ThreadStart ();


Ipning bajarilishi u tugaguncha davom etadi.
usuli, shundan so'ng ip tugaydi. Quyida foydalanish misoli keltirilgan TheadStart delegatini yaratish uchun kengaytirilgan C# sintaksisi : ThreadTest sinfi
{


statik bo'shliq Main()
{


Thread thread1 = new Thread(yangi ThreadStart(Go));
thread1.Start(); Go();
}
statik void Go()
{
Console.WriteLine("salom!");
56
Machine Translated by Google
}
}
Ushbu misolda thread1 Go() usulini bajaradi va xuddi shunday
vaqt, bu usul asosiy ipda bajariladi. Natijada ikkita lahzali salom chiqishiga yaqin.
Argumentlarni ipning maqsad usuliga o'tkazishning eng oddiy usuli usulini kerakli bilan chaqiradigan lambda ifodasini bajaring
argumentlar:
sinf dasturi
{


statik bo'shliq Main()
{


Thread thread1 = new Thread(() => Chop etish ("1-mavzudan salom!"));
thread1.Start();
}


statik bekor Chop etish (string xabari)
{
Console.WriteLine(xabar);
}
}
Boshqa usul - ThreadStart usuliga argument o'tkazish :
sinf dasturi
{


statik bo'shliq Main()
{


Thread thread1 = new Thread(Chop etish);
thread1.Start("1-mavzudan salom!");
}


statik bekor Chop etish (obyekt messageObj)
57
Machine Translated by Google
{
string xabar = (string)messageObj; Console.WriteLine(xabar);
}
}
Bu Thread konstruktori haddan tashqari yuklanganligi sababli ishlaydi
ikki delegatdan birini qabul qiling:

Download 1.46 Mb.

Do'stlaringiz bilan baham:
1   ...   28   29   30   31   32   33   34   35   ...   85




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling