কম্পিউটার

C# এ মাল্টিথ্রেডিং কি?


C# এ, System.Threading.Thread ক্লাসটি থ্রেডের সাথে কাজ করার জন্য ব্যবহৃত হয়। এটি একটি মাল্টিথ্রেডেড অ্যাপ্লিকেশনে পৃথক থ্রেড তৈরি এবং অ্যাক্সেস করার অনুমতি দেয়। একটি প্রক্রিয়ায় কার্যকর করা প্রথম থ্রেডটিকে প্রধান থ্রেড বলা হয়।

যখন একটি C# প্রোগ্রাম কার্যকর করা শুরু করে, তখন মূল থ্রেডটি স্বয়ংক্রিয়ভাবে তৈরি হয়। থ্রেড ক্লাস ব্যবহার করে তৈরি করা থ্রেডগুলিকে প্রধান থ্রেডের চাইল্ড থ্রেড বলা হয়।

C# −

এ কিভাবে একটি থ্রেড তৈরি করতে হয় তা দেখানোর একটি উদাহরণ নিচে দেওয়া হল
using System;
using System.Threading;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         Thread th = Thread.CurrentThread;
         th.Name = "MainThread";
         Console.WriteLine("This is {0}", th.Name);
         Console.ReadKey();
      }
   }
}

C# −

-এ থ্রেডগুলি কীভাবে পরিচালনা করতে হয় তা এখানে আরেকটি উদাহরণ দেখানো হয়েছে

উদাহরণ

using System;
using System.Threading;

namespace MultithreadingApplication {
   class ThreadCreationProgram {
      public static void CallToChildThread() {
         Console.WriteLine("Child thread starts");
         // the thread is paused for 5000 milliseconds
         int sleepfor = 5000;
         Console.WriteLine("Child Thread Paused for {0} seconds", sleepfor / 1000);
         Thread.Sleep(sleepfor);
         Console.WriteLine("Child thread resumes");
      }

      static void Main(string[] args) {
         ThreadStart childref = new ThreadStart(CallToChildThread);
         Console.WriteLine("In Main: Creating the Child thread");

         Thread childThread = new Thread(childref);
         childThread.Start();
         Console.ReadKey();
      }
   }
}

আউটপুট

In Main: Creating the Child thread
Child thread starts
Child Thread Paused for 5 seconds
Child thread resumes

  1. ASP .Net MVC C# এ ChildActionOnly অ্যাট্রিবিউটের ব্যবহার কী?

  2. জাভাতে সুইং ওয়ার্কার ক্লাসের গুরুত্ব কী?

  3. জাভাতে সুইং ইউটিলিটি ক্লাসের গুরুত্ব কী?

  4. পাইথনে os.pipe() ফাংশন কি করে?