تفاوت task و thread در سی شارپ

تفاوت task و thread در سی شارپ
فهرست مقاله [نمایش]

    وقتی در مورد برنامه‌نویسی چند نخی در سی‌ شارپ صحبت می‌کنیم، دو کلمه کلیدی به ذهن ما می‌رسد: task و thread. مفهوم این دو به یکدیگر نزدیک هستند اما تفاوت‌های اساسی دارند.


    Thread
     

    در واقع، thread یک رشته اجرایی است که می‌تواند بطور موازی با دیگر threads اجرا شود. این رشته‌ها بطور مستقل از یکدیگر کار می‌کنند و می‌توانند به صورت همزمان در یک پروسه اجرا شوند.

    
    Thread newThread = new Thread(() =>
    {
       for (int i = 0; i < 5; i++)
       {
           Console.WriteLine("Thread در حال اجرا است.");
       }
    });
    newThread.Start();
    

    Task
     

    واژه task به عملیات‌های غیرهمزمان و پیچیده‌تر اشاره دارد. در سی‌ شارپ، وقتی از Task استفاده می‌کنیم، به صورت غیرهمزمان کار می‌کند و به ما اجازه می‌دهد که به راحتی از ویژگی‌های چند نخی استفاده کنیم.

    
    Task.Run(() =>
    {
       for (int i = 0; i < 5; i++)
       {
           Console.WriteLine("Task در حال اجرا است.");
       }
    });
    

    مثال کاربردی


    فرض کنید شما یک وب‌سرویس دارید که باید اطلاعاتی را از چند منبع مختلف بیاورد. از thread برای دریافت اطلاعات از هر منبع و از task برای مدیریت و اجرا به صورت همزمان استفاده می‌کنید.

    برنامه‌نویسی چندنخی فقط یکی از مواردی است که در سی‌ شارپ باید یاد بگیرید. برای یادگیری حرفه‌ای سی‌ شارپ و افزایش توانایی‌هایتان، پیشنهاد می‌کنیم در دوره‌های آموزش سی شارپ باگتو شرکت کنید. با این دوره‌ها، شما نه تنها در موضوع برنامه‌نویسی چند نخی، بلکه در تمامی زمینه‌های مرتبط با سی‌ شارپ مهارت پیدا کنید.


    • نویسنده: تیم تحریریه باگتو

    ارسال دیدگاه

    برای افزودن دیدگاه خود، نیاز است ابتدا وارد حساب کاربری‌تان شوید


    دیدگاه کاربران