مشاهده دست آورد نظرسنجی: Are u undrestand my question?

رای دهنده
1. شما نمی توانید در این رای گیری رای بدهید
  • yes

    1 100.00%
  • no

    0 0%
  • a little

    0 0%
  • wrong

    0 0%
نمایش نتایج 1 تا 2 از 2

نام تاپیک: مشکل با تایمر

  1. #1

    مشکل با تایمر

    سلام

    در دلفی و حتی C#‎ هنگام تنظیم مقدار Interval تایمر به 100 و کمتر ، زمان مشخص شده با زمان واقعی در اجرا متفاوت و بیشتر است برای مثال اگر مقدار Interval عدد 20 باشد به جای اجرا شدن event تایمر هر 20ms به 20ms ، هر 35ms اجرا می شود.
    جتی از مقدار 10 به پایین هیچ تغییری به وجود نمی آید.
    راه حل چیست؟
    Therad هم نمی توانم استفاده کنم

  2. #2

    نقل قول: مشکل با تایمر

    زمانی که رویداد مربوط به OnTimer مربوطه فراخوانی میشه، لزوما مساوی با Interval تعیین شده نیست!
    در Interval تعیین شده ویندوز پیام WM_TIMER را به پنجره ایی که برای دریافت این پیام رجیستر کرده ارسال میکنه. این پیام در صف پیام های اون پنجره قرار میگیره. زمانی که توسط اون پنجره پردازش بشه، رویداد مربوطه فراخوانی میشه. پس بین زمان دریافت پیام و فراخوانی رویداد فاصله وجود داره. هر چه تعداد پیام های موجود در صف بیشتر باشه، و پردازش مربوط به هر پیام وقت گیرتر باشه، مسلما این فاصله بیشتر میشه.
    برای همین هم استفاده از Timer برای کارهایی که به دقت زمانی زیادی نیاز دارند، توصیه نمیشه. اگر هم مثلا میگن در یک Thread مستقل ازش استفاده کنید، علتش اینه که اون Thread سرش خلوت تر هست، و فقط باید به پیام های مربوط به Timer واکنش نشون بده، در نتیجه تاخیر بین دریافت پیام و پردازش آن کمتر میشه. برای اینکه دقت کارتون بالاتر بره، می تونید از Multimedia Timer در ویندوز استفاده کنید که در Thread مستقل به خودش اجرا میشه. برای کار با این نوع از تایمرها، تابع timeSetEvent را در MSDN جستجو کنید.

    در ضمن، برای همچین تاپیکی نظرسنجی راه نمیاندازند!


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

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

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

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