آموزش کلاس تایمر در زاماین

شروع موضوع توسط zolfaghari ‏7 سپتامبر 2016 در انجمن آموزش کد های c#

  1. zolfaghari

    zolfaghari مدیریت کل سایت عضو کادر مدیریت

    ارسال ها:
    146
    تشکر شده:
    187
    امتیاز دستاورد:
    43
    شغل:
    برنامه نویس
    محل سکونت:
    همدان
    سیستم عامل:
    محیط برنامه نویسی:
    سیستم عامل موبایل:
    مرورگر:
    برای استفاده از تایمر می بایست یک کلاس بسازید و از پارامتر های آن استفاده کنید
    کد زیر کلاس تایمر می باشد
    C#:
    1. using System;
    2. using System.Threading;
    3.  
    4. class TimerExampleState {
    5.     public int counter = 0;
    6.     public Timer tmr;
    7. }
    8.  
    9. class App {
    10.    public static void Main() {
    11.     TimerExampleState s =

      مهمان گرامی برای مشاهده لینک ها لطفا ثبت نام کنید یا وارد حسابتان شوید

      TimerExampleState();
    12.  
    13.     // Create the delegate that invokes methods for the timer.
    14.     TimerCallback timerDelegate =

      مهمان گرامی برای مشاهده لینک ها لطفا ثبت نام کنید یا وارد حسابتان شوید

      TimerCallback(CheckStatus);
    15.  
    16.     // Create a timer that waits one second, then invokes every second.
    17.     Timer timer =

      مهمان گرامی برای مشاهده لینک ها لطفا ثبت نام کنید یا وارد حسابتان شوید

      Timer(timerDelegate, s, 1000, 1000);
    18.  
    19.     // Keep a handle to the timer, so it can be disposed.
    20.     s.tmr = timer;
    21.  
    22.     // The main thread does nothing until the timer is disposed.
    23.     while (s.tmr != null)
    24.         Thread.Sleep(0);
    25.     Console.WriteLine("Timer example done.");
    26.    }
    27.    // The following method is called by the timer's delegate.
    28.  
    29.    static void CheckStatus(Object state) {
    30.     TimerExampleState s = (TimerExampleState) state;
    31.     s.counter++;
    32.           Console.WriteLine("{0} Checking Status {1}.",DateTime.Now.TimeOfDay, s.counter);
    33.         if (s.counter == 5) {
    34.         // Shorten the period. Wait 10 seconds to restart the timer.
    35.         (s.tmr).Change(10000,100);
    36.         Console.WriteLine("changed...");
    37.     }
    38.         if (s.counter == 10) {
    39.         Console.WriteLine("disposing of timer...");
    40.         s.tmr.Dispose();
    41.         s.tmr = null;
    42.     }
    43.    }
    44. }
    خروجی کد بالا بصورت زیر است
    خروجی:
    1. 10:51:40.5809015 Checking Status 1.
    2. 10:51:41.5823515 Checking Status 2.
    3. 10:51:42.5838015 Checking Status 3.
    4. 10:51:43.5852515 Checking Status 4.
    5. 10:51:44.5867015 Checking Status 5.
    6. changed...
    7. 10:51:54.5911870 Checking Status 6.
    8. 10:51:54.6913320 Checking Status 7.
    9. 10:51:54.7914770 Checking Status 8.
    10. 10:51:54.8916220 Checking Status 9.
    11. 10:51:54.9917670 Checking Status 10.
    12. disposing of timer...
    13. Timer example done.
     
    آخرین بار توسط مدیر ویرایش شد: ‏10 سپتامبر 2016

به اشتراک بگذارید