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#如何连接数据库?oledbconnection与sqlconnection的区别

C#实现在listview中插入图片的示例代码分享

C#通过oledb操作excel实例代码

C#中的类型系统(值类型和引用类型)的简单介绍

C#中如何操作word的方法示例

C#如何导入导出与处理excel文件

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

采用 C# 编写的学委助手详解及实例

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




打赏

取消

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

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

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

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

评论

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