在上一篇C#多线程之线程同步篇2中,我们主要学习了AutoResetEvent构造、ManualResetEventSlim构造和CountdownEvent构造,在这一篇中,我们将学习Barrier构造、ReaderWriterLockSlim构造和SpinWait构造。

七、使用Barrier构造

  在这一小节中,我们将学习一个比较有意思的同步构造:Barrier。Barrier构造可以帮助我们控制多个等待线程达到指定数量后,才发送通知信号,然后所有等待线程才能继续执行,并且在每次等待线程达到指定数量后,还能执行一个回调方法。具体步骤如下所示:

1、使用Visual Studio 2015创建一个新的控制台应用程序。

2、双击打开“Program.cs”文件,编写代码如下所示:

iOS培训,Swift培训,苹果开发培训,移动开发培训

 1 using System; 2 using System.Threading; 3 using static System.Console; 4 using static System.Threading.Thread; 5  6 namespace Recipe07 7 { 8     class Program 9     {10         static Barrier barrier = new Barrier(2, b => WriteLine($"End of phase 
        
		

网友评论