zoukankan      html  css  js  c++  java
  • C#多线程编程实战1.6线程优先级

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Threading;
    using System.Diagnostics;
    //线程优先级
    namespace Recipe6
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.WriteLine(Thread.CurrentThread.Priority);
    Console.WriteLine("Running on all cores available");
    RunThreads();
    Thread.Sleep(2);
    Console.WriteLine("Running on a single core");
    Process.GetCurrentProcess().ProcessorAffinity = new IntPtr(1);//让操作系统将所有的线程运行在单个CPU核心上
    RunThreads();
    Console.ReadKey();
    }
    static void RunThreads()
    {
    var sample = new ThreadSample();
    var threadOne = new Thread(sample.CountNumbers);
    threadOne.Name = "ThreadOne";
    var threadTwo = new Thread(sample.CountNumbers);
    threadTwo.Name = "ThreadTwo";

    threadOne.Priority = ThreadPriority.Highest;
    threadTwo.Priority = ThreadPriority.Lowest;
    threadOne.Start();
    threadTwo.Start();

    Thread.Sleep(2);
    sample.Stop();

    }
    }
    }

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Threading;
    namespace Recipe6
    {
    public class ThreadSample
    {
    private bool _isStopped = false;
    public void Stop()
    {
    _isStopped = true;
    }
    public void CountNumbers()
    {
    long counter = 0;
    while (!_isStopped)
    {
    counter++;
    }
    Console.WriteLine("CurrentThread.Name: {0} CurrentThread.Priority:{1} counter:{2} ", Thread.CurrentThread.Name, Thread.CurrentThread.Priority, counter);
    }
    }
    }

  • 相关阅读:
    CMS前世今生
    叫练手把手教你读JVM之GC信息
    原来我还有网络天赋
    最简单的JVM内存结构图
    图解CyclicBarrier运动员接力赛
    图解定时任务线程池
    并发队列:ArrayBlockingQueue实际运用场景和原理
    ReentrantReadWriteLock读写锁简单原理案例证明
    JavaScript中的Function类型浅析
    JS数组整理
  • 原文地址:https://www.cnblogs.com/tsh292278/p/9238208.html
Copyright © 2011-2022 走看看