Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

c . में pthread_equal ()

pthread_equal() फ़ंक्शन का उपयोग यह जांचने के लिए किया जाता है कि दो थ्रेड बराबर हैं या नहीं। यह 0 या गैर-शून्य मान देता है। समान थ्रेड्स के लिए, यह गैर-शून्य लौटाएगा, अन्यथा यह 0 देता है। इस फ़ंक्शन का सिंटैक्स नीचे जैसा है -

int pthread_equal (pthread_t th1, pthread_t th2);

आइए अब pthread_equal() को क्रिया में देखें। पहले मामले में, हम परिणाम की जांच करने के लिए स्व-सूत्र की जांच करेंगे।

उदाहरण

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <pthread.h>
pthread_t sample_thread;
void* my_thread_function(void* p) {
   if (pthread_equal(sample_thread, pthread_self())) { //pthread_self will return current thread id
      printf("Threads are equal\n");
   } else {
      printf("Threads are not equal\n");
   }
}
main() {
   pthread_t th1;
   sample_thread = th1; //assign the thread th1 to another thread object
   pthread_create(&th1, NULL, my_thread_function, NULL); //create a thread using my thread function
   pthread_join(th1, NULL); //wait for joining the thread with the main thread
}

आउटपुट

Threads are equal

अब हम परिणाम देखेंगे, यदि हम दो अलग-अलग धागों के बीच तुलना करते हैं।

उदाहरण

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <pthread.h>
pthread_t sample_thread;
void* my_thread_function1(void* ptr) {
   sample_thread = pthread_self(); //assign the id of the thread 1
}
void* my_thread_function2(void* p) {
   if (pthread_equal(sample_thread, pthread_self())) { //pthread_self will return current thread id
      printf("Threads are equal\n");
   } else {
      printf("Threads are not equal\n");
   }
}

main() {
   pthread_t th1, th2;
   pthread_create(&th1, NULL, my_thread_function1, NULL); //create a thread using my_thread_function1
   pthread_create(&th1, NULL, my_thread_function2, NULL); //create a thread using my_thread_function2
   pthread_join(th1, NULL); //wait for joining the thread with the main thread
   pthread_join(th2, NULL);
}

आउटपुट

Threads are not equal

  1. सी # प्रोग्राम एक थ्रेड को मारने के लिए

    पहले एक थ्रेड बनाएं और उसे शुरू करें - // new thread Thread thread = new Thread(c.display); thread.Start(); अब थ्रेड प्रदर्शित करें और थ्रेड के कार्य को रोकने के लिए स्टॉप फ़ंक्शन सेट करें - public void display() {    while (!flag) {       Console.WriteLine("It's W

  1. सी # कार्यक्रम थ्रेड की प्राथमिकता प्रदर्शित करने के लिए

    सी# में थ्रेड की प्राथमिकता दिखाने के लिए, प्राथमिकता का उपयोग करें संपत्ति। सबसे पहले, currentThread . का उपयोग करें एक थ्रेड के बारे में जानकारी प्रदर्शित करने के लिए संपत्ति - Thread thread = Thread.CurrentThread; अब थ्रेड का उपयोग करें। प्राथमिकता संपत्ति धागे की प्राथमिकता प्रदर्शित करने के लिए

  1. जावा में थ्रेड पूल

    एक थ्रेड पूल प्री-इनिशियलाइज़्ड थ्रेड्स का एक संग्रह है। थ्रेड पूल के पीछे सामान्य योजना यह है कि मेथड स्टार्टअप पर विभिन्न प्रकार के थ्रेड्स बनाएं और उन्हें एक पूल में रखें, जहाँ भी वे बैठते हैं और काम की उम्मीद करते हैं। एक बार जब कोई सर्वर भागीदारी के लिए कॉल प्राप्त करता है, तो यह इस पूल से एक ध