কম্পিউটার টিউটোরিয়াল

C-এ pthread_equal(): দুটি থ্রেড সমান কিনা চেক করা


pthread_equal() ফাংশনটি দুটি থ্রেড সমান কিনা চেক করে। সমান হলে non-zero, না হলে ০ রিটার্ন করে।

সিনট্যাক্স: int pthread_equal(pthread_t th1, pthread_t th2);

উদাহরণ ১: সেলফ থ্রেড চেক

#include <stdio.h>
#include <pthread.h>
pthread_t sample_thread;

void* my_thread_function(void* p) {
    if (pthread_equal(sample_thread, pthread_self()))
        printf("Threads are equal\n");
    else
        printf("Threads are not equal\n");
    return NULL;
}

int main() {
    pthread_t th1;
    sample_thread = th1;
    pthread_create(&th1, NULL, my_thread_function, NULL);
    pthread_join(th1, NULL);
    return 0;
}

আউটপুট

Threads are equal

উদাহরণ ২: দুটি আলাদা থ্রেড চেক

#include <stdio.h>
#include <pthread.h>
pthread_t sample_thread;

void* my_thread_function1(void* ptr) {
    sample_thread = pthread_self();
    return NULL;
}
void* my_thread_function2(void* p) {
    if (pthread_equal(sample_thread, pthread_self()))
        printf("Threads are equal\n");
    else
        printf("Threads are not equal\n");
    return NULL;
}

int main() {
    pthread_t th1, th2;
    pthread_create(&th1, NULL, my_thread_function1, NULL);
    pthread_create(&th2, NULL, my_thread_function2, NULL);
    pthread_join(th1, NULL);
    pthread_join(th2, NULL);
    return 0;
}

আউটপুট

Threads are not equal

  1. C#-এ সিম্পল থ্রেড তৈরি করা

  2. C#-এ থ্রেড किल (Stop) করা

  3. C#-এ করেন্ট থ্রেডের প্রায়োরিটি দেখানো

  4. জাভাতে থ্রেড পুল (Thread Pools)