码迷,mamicode.com
首页 > 编程语言 > 详细

线程锁

时间:2017-07-05 21:23:33      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:tar   ring   obj   class   art   个人   write   ram   blog   

C#

 1  class Program
 2     {
 3         static object locker = new object();//创建锁
 4         public static int money = 0;//捐款总数
 5         static void Main(string[] args)
 6         {
 7             Thread t1 = new Thread(write);//创建一个新的线程t1(捐款人)
 8             Thread t2 = new Thread(write);
 9             t1.Start();
10             t2.Start();
11 
12             Console.ReadLine();
13         }
14 
15         private static void write()
16         {         
17             while(true)
18             {
19                 //掏钱,咒骂,排队等捐款人可以同时进行的事
20                 lock (locker)//往捐款箱塞钱时,加锁。同一时刻只有一个人可以塞钱。
21                 {
22                     money += 100;//每人捐款100
23                     Console.WriteLine("有人正在投币,后面的请等待。。。");
24                     Thread.Sleep(3000);
25                     Console.WriteLine("目前共募集"+money+"元\n");
26                 }
27                 //伤心、继续工作、回家、挨老婆打等可以并发的事          
28             }      
29         }
30     }

 

线程锁

标签:tar   ring   obj   class   art   个人   write   ram   blog   

原文地址:http://www.cnblogs.com/huangjianping/p/7123281.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!