Xii bob. Potoklar


Download 116.5 Kb.
bet2/16
Sana25.06.2023
Hajmi116.5 Kb.
#1654625
1   2   3   4   5   6   7   8   9   ...   16
Bog'liq
LSB 12-BOB

gcc -pthread

  • Kutubxonani qo‘shish

  • #include

  • main funksiyasi bilan birinchi oqim hosil qilinadi, undan keyin pthread_create() funksiyasi orqali keyingi oqim hosil qilinadi. Bu oqim yana bir oqimni hosil qilishi mumkin.

  • pthread_create(&pid,&attr,func,arg);

  • arg – func funksiyasining jo‘natadigan parametri bo‘lib, agar oqim muafaqiyatli amalga oshirilsa nol qiymati jo‘natiladi.

    Har bir oqim uchun qo‘yidagi parametrlar aniqlanadi:

    Qo‘yida bir masalani ko‘rib chiqamiz:
    #include
    #include
    void * any_func (void * args)
    {
    fprintf (stderr, "Hello World\n");
    return NULL;
    }
    int main (void)
    {
    any_func (NULL);
    fprintf (stderr, "Goodbye World\n");
    return 0;
    }
    End ushbu masalani oqim bilan yozamiz:
    #include
    #include

    #include


    void * any_func (void * args)
    {
    fprintf (stderr, "Hello World\n");
    return NULL;
    }
    int main (void)
    {
    pthread_t thread;
    int result;
    result = pthread_create
    (&thread, NULL, &any_func, NULL);
    if (result != 0) {
    fprintf (stderr, "Error\n");
    return 1;
    }
    fprintf (stderr, "Goodbye World\n");
    return 0;
    }
    Oqim bilan ishlaganda masalalar parallel ravishda ishlaydi.
    Oqimlar qo‘yidagicha bajariladi:

    • Oqimli funksiya nomli funksiya yaratiladi { XE "Funksiya:oqimli" }.

    • pthread_create() funksiya { XE "Funksiya:pthread_create()" } orqali oqim yaratiladi, (bu boshqa dasturlarga parallel ravishda ishlaydi)

    • Chaqirilgan tomon faoliyatini oqimli funksiyani kutmasdan ishlayveradi.



    Download 116.5 Kb.

    Do'stlaringiz bilan baham:
  • 1   2   3   4   5   6   7   8   9   ...   16




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