نمایش نتایج 1 تا 3 از 3

نام تاپیک: برنامه نویسی مالتی ترد

  1. #1

    برنامه نویسی مالتی ترد

    با سلام.بنده بین دو مفهوم Multi threading و برنامه نویسی asynchronous کمی گیج شدم.ببینید من میخوام یه برنامه بنویسم با این شرایط: (باید کدام مفهوم رو دنبالش باشم؟)
    فرض کنید میخوام یه سری دیتا رو از دو پورت سریال سخت افزاری بگیرم و اونها رو ذخیره کنم در دیتابیس(برنامه به تغییر دیتا حساسه و با تغییر دیتا اون رو میخونه و ذخیره میکنه).حالا ممکنه زمانی که دارم از یک پورت دیتا رو میگیرم و برنامه مشغول گرفتن و ذخیره سازی دیتا هست ؛اون پورت دیگه دیتای جدیدی براش رسیده باشه و بخواد اونرو دریافت و ذخیره کنه؛ حالا سوالم اینه که برای اینکه این دیتای جدید رو از دست ندم چه نوع برنامه نویسی باید انجام بدم که برنامه در حالی که رو دیتای اول کار میکنه بتونه دیتای جدید رو هم دریافت و ذخیره کنه.یا به عبارت ساده تر دو تا پردازش موازی هم انجام بشه .از thread باید استفاده کنم یا async await
    ؟ممنونم.

  2. #2
    کاربر دائمی آواتار ShayanFiroozi
    تاریخ عضویت
    شهریور 1397
    محل زندگی
    بندرعباس ، خلیج همیشه فارس
    سن
    38
    پست
    222

    نقل قول: برنامه نویسی مالتی ترد

    سلام ،

    Thread یک موضوع سطح پایینه ، کار باهاش تقریبا خطرناک یا اصطلاحا unsafe هستش ، مگر اینکه کاملا اصولی باهاش کار کنین.

    بهتره از Task استفاده کنین.




    new Task()(=>
    {

    //Your Job

    }).Start();


    البته مسائل corss-thread رو رعایت کنین

  3. #3

    نقل قول: برنامه نویسی مالتی ترد

    نقل قول نوشته شده توسط mehdihalla مشاهده تاپیک
    با سلام.بنده بین دو مفهوم Multi threading و برنامه نویسی asynchronous کمی گیج شدم.ببینید من میخوام یه برنامه بنویسم با این شرایط: (باید کدام مفهوم رو دنبالش باشم؟)
    فرض کنید میخوام یه سری دیتا رو از دو پورت سریال سخت افزاری بگیرم و اونها رو ذخیره کنم در دیتابیس(برنامه به تغییر دیتا حساسه و با تغییر دیتا اون رو میخونه و ذخیره میکنه).حالا ممکنه زمانی که دارم از یک پورت دیتا رو میگیرم و برنامه مشغول گرفتن و ذخیره سازی دیتا هست ؛اون پورت دیگه دیتای جدیدی براش رسیده باشه و بخواد اونرو دریافت و ذخیره کنه؛ حالا سوالم اینه که برای اینکه این دیتای جدید رو از دست ندم چه نوع برنامه نویسی باید انجام بدم که برنامه در حالی که رو دیتای اول کار میکنه بتونه دیتای جدید رو هم دریافت و ذخیره کنه.یا به عبارت ساده تر دو تا پردازش موازی هم انجام بشه .از thread باید استفاده کنم یا async await
    ؟ممنونم.
    می تونید از کتابخانه TPL/PLinq برای موازی کردن پردزاش هاتون استفاده کنید البته استفاده ازنخ ها سطح کاربری و قفلهای اطلاعات اشتراکی در لایه هسته سیستم عامل مثل mutex هم می تونید برنامه های موازی بنویسید.

تاپیک های مشابه

  1. تلفیق برنامه نویسی مالتی ترد و سوکت پروگرمینگ
    نوشته شده توسط boysilent در بخش C#‎‎
    پاسخ: 2
    آخرین پست: پنج شنبه 22 خرداد 1393, 09:06 صبح
  2. پاسخ: 2
    آخرین پست: شنبه 27 آبان 1391, 13:16 عصر
  3. سوال: برنامه نویسی سوکت با مالتی ترد
    نوشته شده توسط nahid88 در بخش مباحث مرتبط با مهندسی نرم‌افزار
    پاسخ: 0
    آخرین پست: سه شنبه 02 آبان 1391, 14:53 عصر
  4. نحوه مالتی ترد کردن برنامه ای که ساخته شده
    نوشته شده توسط saed2006 در بخش C#‎‎
    پاسخ: 2
    آخرین پست: دوشنبه 30 فروردین 1389, 12:07 عصر
  5. دیباگ برنامه های مالتی ترد
    نوشته شده توسط omid_Ahmadi در بخش برنامه نویسی مبتنی بر Microsoft .Net Framework
    پاسخ: 5
    آخرین پست: یک شنبه 16 اردیبهشت 1386, 10:09 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •