C#使用Parallel类进行多线程编程实例
本文实例讲述了C#使用Parallel类进行多线程编程的方法。分享给大家供大家参考。具体如下:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading;
usingSystem.Threading.Tasks;
usingSystem.Diagnostics;
usingSystem.Runtime.InteropServices;
namespaceThreads
{
classProgram
{
[DllImport("kernel32.dll",CharSet=CharSet.Auto,SetLastError=true)]
publicstaticexternintGetCurrentProcessorNumber();
privatestaticintcriticalSection=0;
privatestaticobjectlockObject=newobject();
staticvoidMain(string[]args)
{
Console.WriteLine("==================Sequentialcalls==============");
Console.WriteLine();
Target();
Target();
Target();
Target();
Target();
Target();
Target();
Target();
Console.WriteLine();
Console.WriteLine("==================Parallelcalls==============");
Console.WriteLine();
Actionaction=newAction(Target);
Parallel.Invoke(newAction[]{action,action,action,action,action,action,action,action});
Console.ReadKey();
}
privatestaticvoidTarget()
{
Thread.Sleep(2000);
lock(lockObject)
{
criticalSection++;
Console.WriteLine(string.Format("ThreadID:{0}andProcessorID:"+
"{1}CriticalVariableValue:{2}",
Thread.CurrentThread.ManagedThreadId,
GetCurrentProcessorNumber(),criticalSection));
}
}
}
}
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
10 祝女儿简短祝福语大全
11 大学新年祝福语简短创意
12 元旦适合的祝福语简短
13 朋友出远门祝福语简短
14 初六简短的祝福语
15 祝男孩生日祝福语简短
16 同事调离的祝福语简短
17 拜年红包的祝福语简短
18 妈妈生日祝福语简短励志