免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Windows8線程間通信與同步

Windows8線程間通信與同步

(2013-03-19 09:09:58)
      private int interLocked = 9;

      private int lockInt = 19;
      private object lockObj = new object();

      private Mutex mutex;

      private Semaphore semaphore = new Semaphore(2,2);

       public MainPage()
       {
          this.InitializeComponent();
       }

       protected override voidOnNavigatedTo(NavigationEventArgs e)
       {
           //線程同步:Interlocked
          ThreadPool.RunAsync(
              (source) =>
              {
                 Interlocked.Increment(ref interLocked);
                 //Interlocked.Decrement(ref interLocked);
              },
          WorkItemPriority.Normal);

          //lock
          ThreadPool.RunAsync(
              (source) =>
              {
                 lock (lockObj)
                 {
                    lockInt++;
                     lockInt *=5;
                 }
              },
          WorkItemPriority.Normal);

          //Monitor
          ThreadPool.RunAsync(
              (source) =>
              {
                 Monitor.Enter(lockObj);

                 Monitor.Wait(lockObj);//釋放對(duì)象上的鎖并進(jìn)入對(duì)象的等待隊(duì)列
                //Monitor.Pulse(lockObj);//通知等待隊(duì)列中的線程鎖定對(duì)象狀態(tài)的更改

                 Monitor.Exit(lockObj);//釋放指定對(duì)象上的鎖
              },
          WorkItemPriority.Normal);


          //Mutex
          ThreadPool.RunAsync(
              (source) =>
              {
                 bool isNotRunning;
                 mutex = new Mutex(true, "MSI-Muxtex", outisNotRunning);
                 if (!isNotRunning)
                 {
                     //DoSomething ...
                 }
              },
          WorkItemPriority.Normal);

          
          //Semaphore
          ThreadPool.RunAsync(
              (source) =>
              {
                 //阻止當(dāng)前線程,直到當(dāng)前WaitHandle收到信號(hào)
                 semaphore.WaitOne();

                 //退出信號(hào)量并返回前一個(gè)計(jì)數(shù)
                 semaphore.Release();
              },
          WorkItemPriority.Normal);

          //AutoResetEvent autoRestEvent = new AutoResetEvent(false);
          //autoRestEvent.Set();
          //ManualResetEvent manualRestEvent = newManualResetEvent(false);
          //manualRestEvent.Set();
          //manualRestEvent.Reset();
          EventWaitHandle eventWaitHandle = new EventWaitHandle(false,EventResetMode.AutoReset, "msiEventWaitHandle");
          eventWaitHandle.WaitOne();
          eventWaitHandle.Set();
          eventWaitHandle.Reset();

       }
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C#線程同步(5)- 信號(hào)量 Semaphore
C#線程鎖(下)
多線程下的進(jìn)程同步(線程同步問(wèn)題總結(jié)篇)
Windows Embedded CE 6.0 Internals (1) Kernel Overview【轉(zhuǎn)】
線程池是怎么一回事
內(nèi)核2.6.38更新2.6.35的地方
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服