自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

WhataNerd的博客

欢迎访问:https://danght.github.io

  • 博客(3)
  • 收藏
  • 关注

原创 信号量与管程

信号量与管程都是操作系统的并发编程机制,也是现在很多高级语言实现并发的一种底层原理。信号量(Semaphore)信号量机制是由大名鼎鼎的荷兰计算机科学家 Dijkstra 于1965 年提出的操作系统的并发编程模型中,信号量(Semaphore)与锁机制(Mutex)一样都是对底层硬件同步方法的高级抽象信号量的模型信号量模型的组成是这样的:两个成员变量:整型数 count:用于记录共享资源数量等待队列两个基本方法:P() 操作:将 count - 1,若 count <

2020-06-24 20:14:00 780

原创 Java中的等待-通知机制

为什么有等待-通知机制?首先,设想这样一种场景:一个线程的执行需要满足某些条件,当条件不满足时就通过一个循环不断尝试,直到条件满足。这个场景下存在一个明显的缺点,就是线程不断地尝试获取所需的条件,这个循环的过程会白白浪费CPU资源,降低系统性能。等待-通知机制是一种优化策略,其核心思想就是:当线程所需条件不满足时,就阻塞该线程,之后当条件满足时再通知线程,以此提高硬件资源的利用率Java 中的实现在 Java 中实现等待-通知机制,一种经典的做法是使用 synchronized + wait()

2020-06-20 16:41:49 546

原创 关于Java互斥锁

一切从一个例子开始:class SafeCalc { long value = 0L; long get() { return value; } synchronized void addOne() { for (int i = 0; i < 3; i++) { value += 1; } }}现在假设我们启动 5 个写线程执行 addOne(),启动 3 个读线

2020-06-17 18:35:47 3930 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除