本文主要参考《计算机操作系统(第四版)》(西安电子科技大学出版社)以及清华大学操作系统公开课(向勇、陈渝),整理操作系统的基本概念,供自己复习查阅。 信号量机制 进程控制中最重要的一部分便是协调好进程的并发,控制进程同步,最具体的体现就是处理临界资源。信号量机制便广泛应用在临界资源处理方面。 信号量 ...
分类:
其他好文 时间:
2019-11-17 14:59:48
阅读次数:
80
一、CountDownLatch 1.背景: (1)countDownLatch是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue。 (2)存在于java.util.cucurrent包下 ...
分类:
其他好文 时间:
2019-11-17 01:34:58
阅读次数:
68
java中对于生产者消费者模型,或者小米手机营销 1分钟卖多少台手机等都存在限流的思想在里面。 关于限流 目前存在两大类,从线程个数(jdk1.5 Semaphore)和RateLimiter速率(guava) Semaphore:从线程个数限流 RateLimiter:从速率限流 目前常见的算法是 ...
分类:
编程语言 时间:
2019-11-16 20:01:42
阅读次数:
84
进程进程,线程,协程进程和线程的控制由系统完成协程的控制由程序员来完成协程相当于语句块进程的基本状态创建状态:进程在创建时需要申请一个空白PCB(process control block进程控制块),向其中填写控制和管理进程的信息,完成资源分配。如果创建工作无法完成,比如资源无法满足,就无法被调度 ...
分类:
系统相关 时间:
2019-11-12 10:57:38
阅读次数:
99
作者丨阮一峰 http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html 进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释 ...
分类:
编程语言 时间:
2019-11-01 16:33:41
阅读次数:
83
C#开发者(面试者)都会遇到Mutex,Semaphore,Monitor,SemaphoreSlim这四个与锁相关的C#类型,本文期望以最简洁明了的方式阐述四种对象的区别。 什么叫线程安全? 教条式理解 如果代码在多线程环境中运行的结果与 单线程运行结果一样,其他变量值也和预期是一样的,那么线程就 ...
分类:
其他好文 时间:
2019-10-30 18:10:59
阅读次数:
223
1.背景: countDownLatch是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue。 存在于java.util.cucurrent包下。 2.概念 countDownLatch这个 ...
分类:
其他好文 时间:
2019-10-27 10:47:23
阅读次数:
70
在多线程的情况下,有时候我们会希望等待某一线程完成了再继续做其他事情(比如主线程等待子线程结束完之后,自己再结束),要实现这个目的,可以使用Windows API函数WaitForSingleObject,或者WaitForMultipleObjects。这两个函数都会等待Object被标为有信号( ...
分类:
其他好文 时间:
2019-10-24 23:56:05
阅读次数:
205
CountDownLatch/CyclicBarrier/Semaphore 使用过吗?下面详细介绍用法: 一,CountDownLatch 背景; countDownLatch(同步援助)是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier(同步援助)、Semaphore ...
分类:
其他好文 时间:
2019-10-12 20:42:29
阅读次数:
90
1. 等待做线程完成的CountDownLatch 2. 同步屏障CyclicBarrier 2.1 CycliBarrier简介 2.2 CycliBarrier的应用场景 2.3 CycliBarrier和CountDownLatch的区别 3. 控制并发线程数的Semaphore 4. 线程间 ...
分类:
编程语言 时间:
2019-10-09 12:40:22
阅读次数:
95