摘要: 为了更好的使用线程,.NET集成了线程池,线程池有固定的大小,里面维护着一批线程,当有线程请求时,从线程池中取出空闲的线程,执行任务,当任务执行完毕,线程重新释放到线程池,等待再次的请求,当线程池中的线程使用完毕后,如果有新的请求,而且也没有超过线程池的容量,将为新的请求建立线程,注册到线程池。 线 阅读全文
posted @ 2017-08-31 23:26 bdcliang 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 5.Semaphore Semaphore是同一时间允许几个进程同时获取共享资源的,如下例:static void Main() { for (int i = 0; i { Proc("Thread"+i,i*1000); }); Console.WriteLin... 阅读全文
posted @ 2017-08-31 16:56 bdcliang 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 多线程编程过程中,难免会涉及到资源共享的问题,在并发的线程中,如果不对线程加以控制,线程抢夺共享资源,对资源的读取和修改混乱,结果会导致不是我们想要的结果,这就需要引入线程同步的技术。 先演示下没有同步技术的案例: 当执行LockTest() 方法之后,打印出的counter的值则是错乱的: 下面开 阅读全文
posted @ 2017-08-31 16:05 bdcliang 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 1.线程的创建新建线程通常分为两种:带参数的线程和不带参数的线程,不过建立起来都很简单://不带参数 public static void SetUpThread() { Thread t = new Thread(new ThreadStart(() => { Console.WriteLine("====="); ... 阅读全文
posted @ 2017-08-31 11:00 bdcliang 阅读(211) 评论(0) 推荐(0) 编辑

bdcliang