标签:同步

Java

Java 线程状态和等待唤醒机制和线程池的实现

1

xirruiqiang 发布于 2020-03-30

1.概念 线程一共有6中状态,相互之间可以互相转换。 等待唤醒案例(线程之间的通信) 实现: 等待唤醒案例:线程之间的通信 创建一个顾客线程(消费者):告知老板要的包子的种类和数量,调用wait方法,放弃cpu的执行,进入到WAITING状态(无限等待) 创建一个老板线程(生产者...

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

Java

99%的程序员都在用Lombok,原理竟然这么简单?我也手撸了一个!|建议收藏

8

zhuangli 发布于 2020-03-30

罗曼罗兰说过:世界上只有一种英雄主义,就是看清生活的真相之后依然热爱生活。 对于 Lombok 我相信大部分人都不陌生,但对于它的实现原理以及缺点却鲜为人知,而本文将会从 Lombok 的原理出发,手撸一个简易版的 Lombok,让你理解这个热门技术背后的执行原理,以及它的优缺点...

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

Java

浅析AQS(AbstractQueueSynchronizer)

1

xiaoli.wang 发布于 2020-03-29

概念 AQS是一个实现同步锁和基于先进先出队列相关的同步器的框架,它的目的是为大多数依赖单个原子变量来表示锁状态的同步器提供提供基础框架,也就是说这个框架已经设计出一套完备安全的同步机制,当你需要实现你的自定义规则的同步器的话,只需要继承并重写它的一些方法(比如tryAcquir...

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

Java

java内存模型(JMM)和happens-before

1

xirruiqiang 发布于 2020-03-29

java内存模型(JMM)和happens-before 我们知道java程序是运行在JVM中的,而JVM就是构建在内存上的虚拟机,那么内存模型JMM是做什么用的呢? 我们考虑一个简单的赋值问题: int a=100; JMM考虑的就是什么情况下读取变量a的线程可以看到值为100...

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

Java

个人吐血系列-总结Java集合

11

尖兵 发布于 2020-03-29

❝ 个人感觉掌握常用的集合类,看其中的源码即可,有很多其实都差不多的,把个别不同的源码多看看,其实就是增删查 比如,常见的ArrayList、LinkedList、HashMap和ConcurrentHashMap经常被问到的多准备准备。 这一块就是看源码分析,没别的 ❞ Arr...

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

Java

【WEB系列】异步请求知识点与使用姿势小结

5

小丁 发布于 2020-03-29

在Servlet3.0就引入了异步请求的支持,但是在实际的业务开发中,可能用过这个特性的童鞋并不多? 本篇博文作为异步请求的扫盲和使用教程,将包含以下知识点 什么是异步请求,有什么特点,适用场景 四种使用姿势: AsyncContext方式 Callable WebAsyncTa...

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

编程技术

微前端架构设计和实践:由来

xiaoli.wang 发布于 2020-03-29

web1.0时代,当时是没有前端的概念的,大家都在使用jsp,php,asp。 因为jsp的强大,开发小微项目的时候可以很快的开发出来,但是相对的,编写大项目的时候问题也会明显的暴露出来 缺点: 业务体系增大,调试困难 jsp混杂业务,难以维护 前后端职责不明确(或者不区分职责)...

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

Java

面试题–java集合

6

wenming.gapo 发布于 2020-03-29

容器可以管理对象的生命周期、对象与对象之间的依赖关系,您可以使用一个配置文件(通常是XML),在上面定义好对象的名称、如何产生(Prototype 方式或Singleton 方式)、哪个对象产生之后必须设定成为某个对象的属性等,在启动容器之后,所有的对象都可以直接取用,不用编写任...

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

Java

G1理论基础与经验分享

17

yeseng 发布于 2020-03-29

​ 关于G1收集器的收集过程,看过一些博客和书,基本上十有八九都说的不一样,如果要确定哪个是正确的还是得去看实现代码。当然我不打算去学C语言看代码了,接下来就结合自己的理解和资料来介绍G1收集器收集过程,力求做到初次接触G1也能看明白。 ​ G1可以说是个里程碑式的产品,从提出到...

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

编程技术

微服务公用代码组织实践

6

尖兵 发布于 2020-03-29

作者 | 奇正 我们知道,微服务架构由多个相对简单的服务组成,依赖服务之间的隔离性降低系统复杂度。理论上拆解完备的微服务,不应当存在过多业务代码复用的机会,因为服务之间的有效的隔离会使得各自代码只关注自身的上下文,微服务的边界清晰不但包含职责清晰,从代码层面也应当清晰隔离。 但微...

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

Java

java常用容器简要性能分析(List。Map。Set)

14

邓龙华 发布于 2020-03-29

嗯,实习的时候看到这个,感觉蛮好,这里摘录学习,生活加油: 我曾经害怕别人嘲笑的目光,后来,发现他们的目光不会在我身上停留太久,人们更愿意把目光放在自己身上。 知乎上看到,讲给自己。 List List和Set都属于Collection的子接口,List集合中的元素是按照插入顺序...

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

Java

三、聊聊并发 — 为什么Java并发编程必须了解Java内存模型

4

xirruiqiang 发布于 2020-03-29

前面我们说了在并发编程中引起线程不安全的原因,主要因为共享变量的可见性、重排序、原子性,也稍微的提了一下内存模型,那什么是内存模型呢?为什么必须要了解Java内存模型呢?那我们这篇文章就来聊一聊Java内存模型 什么是Java内存模型 Java 内存模型的主要目标是定义程序中各个...

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

Java

二本本科无实习上岸滴滴京东58科大讯飞复盘

4

刘莉莉 发布于 2020-03-29

因为内容过多,分为上、中、下 本篇内容:8000+ 字 建议阅读时间:20 分钟,如果有收获,建议收藏多次阅读 上篇目录 秋招之路复盘篇     楼 主的自我介绍:     我自己复习范围: (关注公...

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

Java

【JAVA程序员进阶之路】Redis基础知识两篇就满足(二)

3

hanze 发布于 2020-03-28

大家好,我是南橘,从接触java到现在也有差不多两年时间了,两年时间,从一名连java有几种数据结构都不懂超级小白,到现在懂了一点点的进阶小白,学到了不少的东西。知识越分享越值钱,我这段时间总结(包括从别的大佬那边学习,引用)了一些平常学习和面试中的重点(自我认为),希望给大家带...

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

Java

SpringBoot 集成 Apollo 配置中心,一文搞定!

30

songhua.gao 发布于 2020-03-28

点击上方 蓝色字体 ,选择“设为星标” 回复" 666 " 领取面试资料 来源 | https://urlify.cn/aAFfqi 由于 Apollo 概念比较多,刚开始使用比较复杂,最好先过一遍概念再动手实践尝试使用。 1、背景 随着程序功能的日...

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

Java

SpringBoot 集成 Apollo 配置中心,一文搞定!

30

zhuangli 发布于 2020-03-28

点击上方 蓝色字体 ,选择“设为星标” 回复" 666 " 领取面试资料 来源 | https://urlify.cn/aAFfqi 由于 Apollo 概念比较多,刚开始使用比较复杂,最好先过一遍概念再动手实践尝试使用。 1、背景 随着程序功能的日...

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

Java

探秘 ThreadLocal 的实现机制与小地雷 原 荐

1

刘莉莉 发布于 2020-03-28

Java 多线程类库对于共享数据的读写访问主要采用同步机制来保证线程安全,而本文所要探究的 ThreadLocal 则采用了一种完全不同的策略,它不是用来解决共享数据的并发访问问题的,ThreadLocal 让每个线程都将目标数据复制一份作为线程私有,后续对于该数据的操作都是在各...

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

Spring

Spring Cloud 系列之 Alibaba Sentinel 服务哨兵

21

xubiao.zhuang 发布于 2020-03-28

前文中我们提到 Netflix 中多项开源产品已进入维护阶段,不再开发新的版本,就目前来看是没有什么问题的。但是从长远角度出发,我们还是需要考虑是否有可替代产品使用。比如本文中要介绍的 Alibaba Sentinel 就是一款高性能且轻量级的流量控制、熔断降级可替换方案。 Se...

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