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

نام تاپیک: فراخوانی هم زمان یک متد در یک برنامه

  1. #1

    Question فراخوانی هم زمان یک متد در یک برنامه

    با سلام dll به زبان C++‎ دارم که به برنامه ای داده میشه ... این برنامه متد داخل dll را در یک زمان فراخوانی میکنه ... اگر این متد فقط یک بار صدا زده بشه دستگاه متصل به برنامه کار خود را کامل و درست انجام میدهد ...
    اما در فراخوانی همزمان متد کار با ارور مواجه شده و ناتمام می ماند ...
    برای فراخوانی همزمان یک متد چه نکته ای باید رعایت شود ... و دلیل اینکه تداخل پیش میاد چیه؟ و چطور حل میشه؟

    با تشکر

  2. #2

    نقل قول: فراخوانی هم زمان یک متد در یک برنامه

    سلام
    منظورت از
    فراخوانی همزمان یک متد
    چیه؟ برنامه ات Multi thread هست؟
    اگر درست فهمیده باشم و اینجور باشه که thread های مختلف همزمان بخواهند از اون dll استفاده کنند میتونی از Critical Section Objects استفاده کنی یا Mutex Objects

  3. #3

    نقل قول: فراخوانی هم زمان یک متد در یک برنامه

    نقل قول نوشته شده توسط sh4mid مشاهده تاپیک
    سلام
    منظورت از چیه؟ برنامه ات Multi thread هست؟
    اگر درست فهمیده باشم و اینجور باشه که thread های مختلف همزمان بخواهند از اون dll استفاده کنند میتونی از Critical Section Objects استفاده کنی یا Mutex Objects
    از شرکتت در بحث ممنونم لینکی که دادی رو مطالعه می کنم ...
    یک مثال میزنم که بهتر مطلب رو برسونم ...
    من یک متد دارم که داده رو از برنامه میگیره پردازش میکنه و روی یک چیپ ذخیره میکنه ...
    وقتی که یک چیپ دارم، مشکی وجود نداره، داده ها پردازش میشه و حاصل روی چیپ ذخیره میشه ...
    اما اگر مثلا 2 تا دستگاه که چیپ داخلش هست رو به کامپوتر وصل کنم و از طریق نرم افزار متد رو برای ذخیره اطلاعات روی هر دو چیپ هم زمان فراخونی کنم این دو فراخونی با هم تداخل ایجاد میکنه و معمولا یا کل کار انجام نمیشه یا یکیش ارور میده و دیگری اوکی میشه ...

    کاری که هنوز امتحان نکردم و میخوام تستش کنم اینه که برای هر فراخونی متد یک هندلی توسط ویندوز تولید میشه ... اون هندل رو نگه دارم و متد ها رو براش فراخونی کنم ... بعدش هم زمان هندل جدیدی ایجاد کنم و هر دو هندل رو تا پایان عملیات پیش ببرم...

    باز دوستان نظری دارن ممنون میشم بنویسن ...

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

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