C#之lock的使用及说明
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApp2
{
class Program
{
static int a = 0;
static int b = 0;
private static object o = new object();
static void Main(string[] args)
{
//A();
//B();
Thread t1 = new Thread(A);
Thread t2 = new Thread(B);
t1.Start();
t2.Start();
Thread t3 = new Thread(C);
t3.Start();
Console.ReadLine();
}
private static void A()
{
//lock (o)
Monitor.Enter(o);
a = a + 2;
Console.WriteLine("我是A方法,a=" + a);
Thread.Sleep(5000);//暂停5秒
b = b + 2;
Console.WriteLine("我是A方法,b=" + b);
Monitor.Exit(o);
}
private static void B()
{
//lock (o)
Monitor.Enter(o);
b++;
Console.WriteLine("我是B方法,b=" + b);
Thread.Sleep(1000); //暂停1秒
a++;
Console.WriteLine("我是B方法,a=" + a);
Monitor.Exit(o);
}
private static void C()
{
Console.WriteLine("我是C方法,随机出现");
}
}
}
- .NET Core系列之MemoryCache 初识
- 007手机一键Root(安机网一键Root) v3.0 官方最新版 一键ROOT您的Android手机
- 12306密码被盗了怎么办?12306密码外泄解决方法
- 12个字的qq网名
- 150M迷你型无线路由器怎么设置?
- 192.168.1.1打不开怎么办?路由器192.168.1.1打不开的原因以及解决办法
- 2011年电子报合订本 电子报 编辑部 中文 PDF版 [84M]
- 2015年1月15日小米新旗舰发布会现场图文直播
- 2016.3.1vivo Xplay5新品发布会现场视频直播 优酷直播
- 2016华为P9发布会视频直播地址 4月15日华为P9国行发布会直播