首页 > 其他 > 详细

Lock使用实例

时间:2016-05-19 23:11:52      阅读:243      评论:0      收藏:0      [点我收藏+]

using System;

using System.Collections.Generic;

using System.Data.SqlClient;

using System.Linq; using System.Text;

using System.Threading; using System.Threading.Tasks;

namespace LockUse {    

//使用Lock(this)的类    

class MyClass    

{         //声明一个bool变量,用于判断是否上锁         //bool testValue = true;

 

        //使用一个私有变量         private string lockParam = "lockParam";   

      //写一个使用Lock的方法         public void MethordUseLok(object o)    

     {             lock (lockParam)           

  {                 while ((bool)o)               

  {                     Console.WriteLine("我被锁住了,动不了");                     Thread.Sleep(500);            

     }          

   }        

}

        //一个不锁的方法        

public void MethordNotUseLoak()      

   {             Console.WriteLine("我是没有上锁的,随便用");      

   }  

   }    

class Program    

{        

static void Main(string[] args)      

   {            

 

MyClass mc = new MyClass();     

        Thread t1 = new Thread(mc.MethordUseLok);        

     t1.Start(true);       

      Thread.Sleep(400);

            lock(mc)         

    {               

  mc.MethordNotUseLoak();     

            mc.MethordUseLok(false);             }         

    Console.ReadKey();     

    }  

   }

}

Lock使用实例

原文:http://www.cnblogs.com/cjaa123/p/5510464.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!