国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET 定時器回調(diào)方法的重入

2024-07-10 13:32:05
字體:
供稿:網(wǎng)友

話不多說,請看代碼:

using System;using System.Collections.Generic;using System.Text;namespace NET.MST.Sixth.Reenter{  class Reenter  {    //用來造成線程同步問題的靜態(tài)成員    private static int TestInt1=0;    private static int TestInt2 = 0;    private static object locko = new object();    static void Main(string[] args)    {      Console.WriteLine("System.Timers.Timer 回調(diào)方法重入測試:");      TimersTimerReenter();      //這里確保已經(jīng)開始的回調(diào)方法有機會結(jié)束      System.Threading.Thread.Sleep(2 * 1000);      Console.WriteLine("System.Threading.Timer 回調(diào)方法重入測試:");      ThreadingTimerReenter();      Console.Read();    }    /// <summary>    /// 展示System.Timers.Timer的回調(diào)方法重入    /// </summary>    static void TimersTimerReenter()    {      System.Timers.Timer timer = new System.Timers.Timer();      timer.Interval = 100;    //100毫秒      timer.Elapsed += TimersTimerHandler;      timer.Start();      System.Threading.Thread.Sleep(2 * 1000); //運行2秒      timer.Stop();    }    /// <summary>    /// 展示System.Threading.Timer的回調(diào)方法重入    /// </summary>    static void ThreadingTimerReenter()    {      //100毫秒      using (System.Threading.Timer timer = new System.Threading.Timer       (new System.Threading.TimerCallback(ThreadingTimerHandler), null, 0, 100))      {        System.Threading.Thread.Sleep(2 * 1000); //運行2秒      }    }    /// <summary>    /// System.Timers.Timer的回調(diào)方法    /// </summary>    /// <param name="sender"></param>    /// <param name="args"></param>    private static void TimersTimerHandler(object sender,EventArgs args)    {      lock (locko)      {        Console.WriteLine("測試整數(shù):" + TestInt1.ToString());        //睡眠10秒,保證方法重入        System.Threading.Thread.Sleep(300);        TestInt1++;        Console.WriteLine("自增1后測試整數(shù):" + TestInt1.ToString());      }    }    /// <summary>    /// System.Threading.Timer的回調(diào)方法    /// </summary>    /// <param name="state"></param>    private static void ThreadingTimerHandler(object state)    {      lock (locko)      {        Console.WriteLine("測試整數(shù):" + TestInt2.ToString());        //睡眠10秒,保證方法重入        System.Threading.Thread.Sleep(300);        TestInt2++;        Console.WriteLine("自增1后測試整數(shù):" + TestInt2.ToString());      }    }  }}

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持VeVb武林網(wǎng)!


注:相關(guān)教程知識閱讀請移步到ASP.NET教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大理市| 巴中市| 扬中市| 昭苏县| 溧水县| 大洼县| 南华县| 北票市| 新密市| 金溪县| 大庆市| 三明市| 民丰县| 耿马| 姜堰市| 祁连县| 化隆| 金阳县| 甘孜县| 新乡县| 天峻县| 阿拉善左旗| 吐鲁番市| 彝良县| 交城县| 绵竹市| 颍上县| 榆林市| 镶黄旗| 齐齐哈尔市| 读书| 金阳县| 临湘市| 台南市| 祥云县| 北川| 鄢陵县| 襄垣县| 嘉鱼县| 子洲县| 腾冲县|