so true

          心懷未來,開創未來!
          隨筆 - 160, 文章 - 0, 評論 - 40, 引用 - 0
          數據加載中……

          .NET零散筆記[4]

          創建只讀屬性,可以只有getter方法而沒有setter方法即可。

          代表主要有兩個用途,一個是回調,另一個是事件處理。對于回調,代表就像是用typedef定義了一個指向函數的指針。代表需要用new來產生,代表也可以在形式上類似于類那樣,來定義個該代表的對象,也可以作為對象作為函數參數進行傳遞。

          nested loop的意思是嵌套循環,經??吹絥ested這個詞,但一直不知道啥意思,現在總算知道了。

          線程部分:
          在System.Threading名空間中定義;
          創建線程不必要利用到一個ThreadStart的代表,該代表來指定一個方法,這一方法就是線程執行的函數體;
          啟動線程用Start;
          休眠線程用Sleep;
          在.NET中,線程可以超越進程的界限,訪問其他進程中的線程;
          線程掛起有Sleep(0)和Suspend兩種方法,第一種方法直到其他線程調用該線程的Interrupt來中斷這種掛起狀態,第二種方法會直到其他線程調用該線程的Resume才能恢復掛起的狀態;
          銷毀線程用Abort。
          一個典型例子:
          class A
          {
           public static void fun()
           {
            Console.WriteLine("Another Thread is running!");
           }
           
           public static void main()
           {
            ThreadStart t=new ThreadStart(fun);
            Console.WriteLine("Main Thread is running!");
            
            Thread thread=new Thread(t);
            thread.Start();
            
            Console.WriteLine("...");
           }
          }

          .NET中用Monitor類實現了類似于信號量的機制來對代碼塊進行串行化的訪問。
          Monitor.Enter(this);
          代碼塊
          Monitor.Exit(this);

          C#中用lock實現了類似Monitor的功能,使用方法如下:
          lock(this)
          {
           代碼塊
          }

          可以通過Mutex來實現同步,使用方法如下:
          在類中定義一個成員變量:Mutex mutex=new Mutex(false);//這里用false表示此刻還不希望鎖定。
          在使用時,可以這樣:
          mutex.WaitOne();
          代碼塊
          mutex.Close();

          posted on 2008-04-07 09:44 so true 閱讀(310) 評論(0)  編輯  收藏 所屬分類: .NET


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 大竹县| 麻江县| 北辰区| 枝江市| 建德市| 兰州市| 乌鲁木齐市| 宜宾市| 天津市| 金华市| 南城县| 灵武市| 七台河市| 平阳县| 香河县| 镇宁| 昭平县| 莒南县| 屏南县| 和平区| 宝鸡市| 仁寿县| 新沂市| 梓潼县| 太谷县| 射洪县| 长治市| 高青县| 喀什市| 开鲁县| 肇州县| 尼木县| 博野县| 登封市| 金川县| 贺州市| 玛多县| 萨迦县| 循化| 清新县| 宁陕县|