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

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

  1. #1

    مشکل در سرعت اجرای برنامه در دو سیستم

    سلام دوستان
    من یه برنامه نوشتم خیلی ساده با دستورات شرطی
    while (1) {
    if (شرط1){
    cout<<"1";
    }

    esle

    if (شرط2){
    cout<<"2";
    }

    esle
    ,
    .
    .
    .
    }

    این مثلا تا 50 پیش رفته
    وقتی برنامه رو اجرا میکنم توو سیستم خودم اگه مثلا if های اولی درست باشه فورا مثلا خروجی رو میده دوباره while تکرارا میشه ولی وقتی شرط های بالا درست نباشه مثلا 30 تا دستور if چک میکنه سرعت خیلی کاهش پیدا میکنه مثلا 4 ثانیه میکشه . ولی این مشکل نیست مشکل اینه که روو همون سیستم یه VM زدم همون سیستم عامل برنامه رو اونجا اجرا میکنم در کسر میلی ثانیه کل حلقه while رو پیمایش میکنه و فورا خروجی رو میده بهم چه دستور if اولی باشه چه آخری توو میلی ثانیه خروجی رو میده ولی توو سیستم خودم هرچی دستورات if بیشتری رو پیمایش میکنه سرعت برنامه واسه خروجی میاد پایین نمیدونم کامل تونستم بفهمونم یا نه

    سیستم اصلی : 
    if (شرط 1)


    مدت زمان خروجی دادن برنامه 1 میلی ثانیه
    .
    .
    .
    if (شرط 30)

    مدت زمان خروجی دادن برنامه 3 ثانیه




    ماشین مجازی

    if (شرط 1)


    مدت زمان خروجی دادن برنامه 1 میلی ثانیه
    .
    .
    .
    if (شرط 30)

    مدت زمان خروجی دادن برنامه 1 میلی ثانیه



    با تشکر

  2. #2
    کاربر دائمی آواتار amirtork
    تاریخ عضویت
    خرداد 1393
    محل زندگی
    Iran(Islamic Republic Of) / Tehran
    پست
    198

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    سلام.
    برای افزایش سرعت اجرای برنامه در برنامه هایی که if های متوالی دارن. بهتر هست از ساختار switch case و یا حداقل از else if استفاده کنید.
    در مورد اجرای سریع تر برنامه در VM، اگر VM هم زمان با اجرای برنامه در سیستم اصلی در حال اجرا هست، شاید دلیل افت سرعت اختصاص منابع به VM باشه، و منابع کمتری در اختیار برنامه ی شما باشه. البته این فقط یک ایده ایی بود که به ذهنم رسید. شاید دلیل چیز دیگه ای باشه.

  3. #3

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    سی تا دستور if متوالی واسه پردازنده های امروزی فکر نکنم تاثیری روو سرعت داشته باشه حلقه توو در توو نیست بگم تاثیر میزاره
    خیر موقع تست روو سیستم اصلی ماشین مجازی فعال نیست

  4. #4

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    سلام
    این برنامه ساده را نذاشتید
    ولی اگه از چند thread استفاده کرده باشید دقت کنید برنامه درست نوشته شده باشه

  5. #5

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    در حد ترد نوشتن نیست . برنامه ساده ای هست .درست نوشته شده درست هم کار میکنه فقط من موندم چرا توو سیستم اصلیم با سرعت کم ترین کار میکنه توو وی ام با سرعت بیشتر یه بار هم شد توو سیستم خودم 2 روز همینجوری با سرعت کار کرد ولی بعد دو روز باز خوابید !

  6. #6

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    سلام
    در مورد شرظ هایی که استفاده کرده اید هم توضیح بدبد. ممکنه اشکال از اونجا باشه.

  7. #7

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    این یه تیکه از کد ام
    void _collect()
    {

    int a[500];
    int i=0;

    COLORREF color;
    COLORREF color1;
    COLORREF color2;
    COLORREF color3;
    COLORREF color4;
    COLORREF color5;
    COLORREF color6;

    HDC dc;

    int temp ;

    dc = GetDC(NULL);
    ReleaseDC(NULL, dc);

    while (1){

    ///////////////////////////1
    dc = GetDC(NULL);
    color1 = GetPixel(dc, 706,336);//
    color2 = GetPixel(dc, 706,337);//
    color3 = GetPixel(dc, 706,338); //
    color4 = GetPixel(dc, 704,336); //


    if (color1==16777215&&color2==16777215&&color3==16777 215&&color4!=16777215) {

    cout<<"1"<<endl; temp=1;
    ofstream __0("number.txt",ios::app);

    __0<<1<<endl<<endl;

    __0.close();
    }


    //////////////////////////2

    dc = GetDC(NULL);
    color1 = GetPixel(dc, 720,341);
    color2 = GetPixel(dc, 721,341);
    color3 = GetPixel(dc, 722,341);
    color4 = GetPixel(dc, 720,336);

    if (color1==16777215&&color2==16777215&&color3==16777 215&&color4!=16777215)
    {
    cout<<" "<<"2"<<endl; temp =2;
    ofstream __0("number.txt",ios::app);

    __0<<" "<<2<<endl<<endl;

    __0.close();
    }


    } // ende while
    }


    ساختارم که مشکل داره می دونم ولی خب کار میکنه
    از نظر خودم اون پیکسل هایی که قبل از هر if دریافت میکنه سرعت رو کاهش میده ولی بحث اینه که چرا روو وی ام ویر سرعت عمل برنامه بالاست ولی توو سیستم اصلی من نه !!!
    آخرین ویرایش به وسیله dj_dj_dj : دوشنبه 15 تیر 1394 در 11:49 صبح

  8. #8

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    برنامه را به این صورت اصلاح کنید ببینید درست می شه

    int temp ;
    HDC dc = GetDC(NULL);
    if (!dc)
    {
    cerr << "error!";
    return;
    }
    ofstream __0("number.txt",ios::app);
    while (1){


    color1 = GetPixel(dc, 706,336);//
    color2 = GetPixel(dc, 706,337);//
    color3 = GetPixel(dc, 706,338); //
    color4 = GetPixel(dc, 704,336); //
    ///////////////////////////1
    if (color1==16777215 && color2==16777215 && color3==16777215 && color4!=16777215){
    cout<<"1"<<endl; temp=1;
    __0<<1<<endl<<endl;
    continue;
    }
    ///////////////////////////2
    if (color1==16777215 && color2==16777215 && color3==16777215 && color4!=16777215){
    cout<<"2"<<endl; temp=2;
    __0<< 2 <<endl<<endl;
    continue;
    }
    }
    __0.close();


    ReleaseDC(NULL, dc);

  9. #9
    کاربر دائمی آواتار golbafan
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    در قلب دوستان
    پست
    2,018

    نقل قول: مشکل در سرعت اجرای برنامه در دو سیستم

    ماشین مجازی سیستمش 32 هست یا 64 بیتی ؟
    سیستم عامل اصلی چی؟ 64 هست؟

    میتونید با TickCount اون خطوطی رو که باعث کندی شده مشخص کنید

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

  1. سوال: مشکل با اجرای برنامه در دیگر سیستم ها
    نوشته شده توسط h-rafiee در بخش C#‎‎
    پاسخ: 2
    آخرین پست: جمعه 24 شهریور 1391, 19:19 عصر
  2. مشکل بانک در اجرای برنامه روی یک سیستم دیگر
    نوشته شده توسط Amir Sabeti در بخش Backup & Restore
    پاسخ: 0
    آخرین پست: جمعه 27 مرداد 1391, 14:23 عصر
  3. مشکل در اجرای برنامه در یک سیستم دیگه
    نوشته شده توسط kablayi در بخش VB.NET
    پاسخ: 9
    آخرین پست: جمعه 18 مرداد 1387, 23:56 عصر
  4. مشکل سرعت اجرای برنامه
    نوشته شده توسط ali_abbasi22145 در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: چهارشنبه 28 بهمن 1383, 13:48 عصر
  5. مشکل در اجرای برنامه رو یه سیستم دیگه
    نوشته شده توسط H_r_m در بخش برنامه نویسی در 6 VB
    پاسخ: 23
    آخرین پست: پنج شنبه 07 آبان 1383, 12:15 عصر

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

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