C#Thread同步Mutex的代码详解


本文摘自PHP中文网,作者黄舟,侵删。

首先Mutx m = new Mutex();

在一个函数中 m.WaitOne();

然后 m.ReleaseMutex();

在另一个函数中 同样 m.WaitOne();

m.ReleaseMutex();

你要写的只能一个进程访问的代码段就放在m.WaitOne();和m.ReleaseMutex();中间

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

private Mutex mutF = new Mutex(); 

        private Mutex mutH = new Mutex(); 

           

        private void ReadF() 

        

            mutF.WaitOne(); 

           // your code to access the resource             

            mutF.ReleaseMutex(); 

        

   

        private void ReadH() 

        

            mutH.WaitOne(); 

   

            // your code to access the resource 

            mutH.ReleaseMutex(); 

        

   

   

        private void Form1_Load(object sender, EventArgs e) 

        

   

            Thread tF = new Thread(new ThreadStart(ReadF)); 

            Thread tH = new Thread(new ThreadStart(ReadH)); 

            tFlower.Start(); 

            tH.Start(); 

               

            mutF.WaitOne(); 

            mutH.WaitOne(); 

            // your code to access the resource 

            Thread.Sleep(1000); 

            mutH.ReleaseMutex(); 

            mutF.ReleaseMutex(); 

}

以上就是C#Thread同步Mutex的代码详解的详细内容!

相关阅读 >>

C#开发之微信小程序发送模板消息功能

C#如何删除ul及li中指定标签里文字的方法详解

详解C#中timer的使用和解决重入问题

解析C#.net 和vb.net的区别

C#新建datacolumn类时type类型参数的生成方式的示例代码详解

.net中创建webservice服务的实例分析(图文)

详解C#winform程序的toolstripbutton自定义背景应用示例源码

详解C#使用litjson解析json的示例代码

C# 中虚方法和抽象方法

简单介绍C#类的继承的示例代码

更多相关阅读请进入《C#》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...