标签:Semaphore

Java

Java并发编程系列-(4) 显示锁与AQS

11

尖兵 发布于 2019-12-13

4 显示锁和AQS 4.1 Lock接口 核心方法 Java在java.util.concurrent.locks包中提供了一系列的显示锁类,其中最基础的就是Lock接口,该接口提供了几个常见的锁相关的操作。 public interface Lock { void lock()...

阅读(13)评论(0)赞 (0)

Java

如何让自己少写点bug?

9

hellas 发布于 2019-12-13

 一点小感触   很多人都知道学编程需要多写代码!不停的写,不停的写,不停的写,结果写的全是Bug . . . 自学其实可能感觉不到,但这如果是在企业级开发里,你写的每一行代码都是要组成产品的一部分交付到用户手里,所以你提交到代码库的每一行代码都是需要 提测 ...

阅读(10)评论(0)赞 (0)

Java

美团大佬带你从ReentrantLock的实现看AQS的原理及应用

21

刘莉莉 发布于 2019-12-12

前言 Java中的大部分同步类(Lock、Semaphore、ReentrantLock等)都是基于AbstractQueuedSynchronizer(简称为AQS)实现的。 AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。 本文会从应用层逐渐深...

阅读(11)评论(0)赞 (0)

Java

在Java7中体会NIO.2异步执行

小丁 发布于 2019-12-10

JDK7 已经大致确定发布时间。JSR 203 提出很久了。2009.11.13,JDK7 M5(b76)已经发布。JSR 203 习惯上称为 NIO.2,主要包括新的: 异步 I/O(简称 AIO); Multicase 多播; Stream Control Transport...

阅读(11)评论(0)赞 (0)

Java

Java 并发编程 73 道面试题及答案

5

songhua.gao 发布于 2019-12-09

点击上方  Java后端 ,选择  设为星标 优质文章,及时送达 原文出处: https://blog.csdn.net/qq_34039315/article/details/7854931 1、在java中守护线程和本地线程区别? java中的线程分为两种...

阅读(21)评论(0)赞 (0)

Spring

Spring Cloud Zuul 在传统路由模式下使用Hystrix

xubiao.zhuang 发布于 2019-12-06

前言 最近这段时间在公司内部分享了Spring Cloud的一些功能,结合目前公司使用的框架,针对这段时间调研的SC(Spring Cloud)技术,对现有的架构中融入了一些自定义的功能. 目前公司使用的架构是Spring Cloud Zuul+dubbo ,使用docker容器...

阅读(19)评论(0)赞 (0)

Java

从ReentrantLock的实现看AQS的原理及应用

17

hellas 发布于 2019-12-05

前言 Java中的大部分同步类(Lock、Semaphore、ReentrantLock等)都是基于AbstractQueuedSynchronizer(简称为AQS)实现的。AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。本文会从应用层逐渐深入到...

阅读(28)评论(0)赞 (0)

Java

面试美团,面试官突然问我 Java “锁” ,我哭了

24

xiaoli.he 发布于 2019-12-03

点击“ 开发者技术前线 ”,选择“星标:top:” 13:21 在看|星标|留言,  真爱 本文转载自「美团技术博客」 前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码( 本文中的源码来自JDK 8 )、...

阅读(25)评论(0)赞 (0)

Java

2020面试预备你也能收割Offer,Java程序员必会知识清单全在这份pdf文档里

31

hellas 发布于 2019-12-02

关于程序员,除了做项目来提高自身的技术之外,还有一种提升自己的专业技能就是:多!看!书! 小编整理出一篇Java进阶架构师之路的核心知识,同时也是面试时面试官必问的知识点,篇章也是包括了很多知识点,其中包括了有基础知识、Java集合、JVM、多线程并发、spring原理、微服务、...

阅读(26)评论(0)赞 (0)

Java

Java中的锁 Lock和synchronized

14

尖兵 发布于 2019-11-30

锁的释放-获取建立的happens before 关系 锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。 下面是锁释放-获取的示例代码:class MonitorExample { int a = 0; publ...

阅读(21)评论(0)赞 (0)

Java

多线程之美3一Java并发工具类

5

Harries 发布于 2019-11-29

一、简介 1.1、 Semaphore 信号量,见文知义,常用于并发控制中的限流作用,我理解是限定数量的共享锁机制。该共享资源最多同时可让n个线程访问,超过n个线程就阻塞等待,如有资源空闲, 唤醒其他等待线程(唤醒又分公平与非公平,默认非公平)比如一条四车道大桥,每次仅能并发通过...

阅读(39)评论(0)赞 (0)

Java

Java 5到Java8 的发展

小丁 发布于 2019-11-28

Java 5到Java8 的发展 JDK 5 自动装箱与拆箱 JDK1.5 为每一个基本数据类型定义了一个封装类。使 java 中的基本数据类型也有自己的对象 int -->Integer double --> Double long --> Long char...

阅读(25)评论(0)赞 (0)

Java

工作常用4种Java线程锁的特点,性能比较、使用场景

3

wenming.gapo 发布于 2019-11-27

多线程的缘由 在出现了进程之后,操作系统的性能得到了大大的提升。虽然进程的出现解决了操作系统的并发问题,但是人们仍然不满足,人们逐渐对实时性有了要求。 使用多线程的理由之一是和进程相比,它是一种非常 花销小,切换快 ,更”节俭”的多任务操作方式。 在Linux系统下,启动一个新的...

阅读(21)评论(0)赞 (0)

Java

Java并发编程AbstractQueuedSynchronizer源码…

xiaoli.he 发布于 2019-11-27

Java并发编程笔记之AbstractQueuedSynchronizer源码分析 为什么要说AbstractQueuedSynchronizer呢? 因为AbstractQueuedSynchronizer是JUC并发包中锁的底层支持,AbstractQueuedSynchro...

阅读(20)评论(0)赞 (0)

Java

The Java Memory Model

xiaoli.wang 发布于 2019-11-26

什么是内存模型 以下因素会阻止一个线程看到变量的最新值,导致在其他线程的内存操作看起来不按顺序发生: 编译器生成的指令的顺序可以和源代码的顺序不同 编译器可以把变量存到寄存器而不是内存 处理器可以并行执行指令,或者不按顺序执行指令 cache可能使得对变量的写以不同的顺序提交到m...

阅读(28)评论(0)赞 (0)

Java

生产者-消费者模型在Hudi中的应用

1

xubiao.zhuang 发布于 2019-11-26

介绍 生产者-消费者 模型用于解耦生产者与消费者,平衡两者之间的能力不平衡,该模型广泛应用于各个系统中,Hudi也使用了该模型控制对记录的处理,即记录会被生产者生产至队列中,然后由消费者从队列中消费,更具体一点,对于更新操作,生产者会将文件中老的记录放入队列中等待消费者消费,消费...

阅读(25)评论(0)赞 (0)

Java

J.U.C剖析与解读1(Lock的实现)

dulong 发布于 2019-11-26

J.U.C剖析与解读1(Lock的实现) 前言 为了节省各位的时间,我简单介绍一下这篇文章。这篇文章主要分为三块:Lock的实现,AQS的由来(通过演变的方式),JUC三大工具类的使用与原理剖析。 Lock的实现:简单介绍ReentrantLock,ReentrantReadWr...

阅读(27)评论(0)赞 (0)

Java

Java 并发与多线程教程

3

xiaoli.he 发布于 2019-11-25

注:此文翻译自 Java Concurrency and Multithreading Tutorial ,本文只是首篇翻译 Java 中的*并发*是一个术语,涉及 Java 平台中的多线程、并发、并行等概念。包括 Java 并发工具,问题和解决方案。这个教程涵盖了多线程的核心概...

阅读(30)评论(0)赞 (0)