标签:原子类

Java

初识CAS的实现原理

4

darida 发布于 2019-10-19

扫描下方二维码或者微信搜索公众号 菜鸟飞呀飞 ,即可关注微信公众号,阅读更多 Spring源码分析 和 Java并发编程 文章。 在Java并发领域,总会提到原子操作,而Java作为一门高级语言,为了实现原子操作,提供了两种解决方案:1)加锁;2)通过CAS来实现,同时JDK在1...

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

Java

最新Java并发面试题,20000字答案解析

15

Harries 发布于 2019-10-18

1、在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User)。 任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(bool on);true则把该线程设置为守护线程,反之则为用户线程。Threa...

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

Java

那些有趣的代码(一)–有点萌的 Tomcat 的线程池题

1

邓龙华 发布于 2019-10-15

最近抓紧时间看看了看tomcat 和 jetty 的源代码。发现了一些有趣的代码,这里和大家分享一下。 Tomcat 作为一个老牌的 servlet 容器,处理多线程肯定得心应手,为了能保证多线程环境下的高效,必然使用了线程池。 但是,Tomcat 并没有直接使用 j.u.c 里...

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

Java

Netty 学习和进阶策略

21

hellas 发布于 2019-10-14

背景 Netty 框架的特点 Netty 的一个特点就是入门相对比较容易,但是真正掌握并精通是非常困难的,原因有如下几个: 涉及的知识面比较广:Netty 作为一个高性能的 NIO 通信框架,涉及到的知识点包括网络通信、多线程编程、序列化和反序列化、异步和同步编程模型、SSL/T...

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

Java

这么写参数校验(Validator)就不会被劝退了~

3

邓龙华 发布于 2019-10-10

点击上方“ 视学算法 ”,选择“设为星标” 做积极的人,而不是积极废人! 来源:http://rrd.me/eqsVq 为什么要用validator 实战演练 自定义参数注解 总结 很痛苦遇到大量的参数进行校验,在业务中还要抛出异常或者 不断的返回异常时的校验信息,在代码中相当冗...

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

Spring

这么写参数校验(Validator)就不会被劝退了~

3

yanxinchi 发布于 2019-10-10

点击上方“ 视学算法 ”,选择“设为星标” 做积极的人,而不是积极废人! 来源:http://rrd.me/eqsVq 为什么要用validator 实战演练 自定义参数注解 总结 很痛苦遇到大量的参数进行校验,在业务中还要抛出异常或者 不断的返回异常时的校验信息,在代码中相当冗...

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

Java

一直使用AtomicInteger?试一试FiledUpdater

3

xiaoli.wang 发布于 2019-10-09

1. 背景 在进入正题之前,这里先提出一个问题,如何在多线程中去对一个数字进行+1操作?这个问题非常简单,哪怕是Java的初学者都能回答上来,使用AtomicXXX,比如有一个int类型的自加,那么你可以使用AtomicInteger 代替int类型进行自加。 AtomicInt...

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

Java

Atomic原子类

尖兵 发布于 2019-10-05

1、概述 Atomic原子类位于java.util.concurrent.atomic包下面,支持单个变量上解除锁的线程安全编程,此包中的类可以将vlatile值、字段和数组的元素概念扩展到那些以提供原子条件更换操作的类中。 对于原子操作,确切说应该是计算机硬件层面提供的原语,它...

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

Java

死磕 java同步系列之redis分布式锁进化史

7

puefu.he 发布于 2019-10-04

问题 (1)redis如何实现分布式锁? (2)redis分布式锁有哪些优点? (3)redis分布式锁有哪些缺点? (4)redis实现分布式锁有没有现成的轮子可以使用? 简介 Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用A...

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

Java

死磕 java同步系列之redis分布式锁进化史

7

Harries 发布于 2019-10-04

问题 (1)redis如何实现分布式锁? (2)redis分布式锁有哪些优点? (3)redis分布式锁有哪些缺点? (4)redis实现分布式锁有没有现成的轮子可以使用? 简介 Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用A...

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

Java

夯实Java基础系列9:深入理解Class类和Object类

2

darida 发布于 2019-09-28

目录 如何获得一个Class类对象 使用Class类的对象来生成目标类的实例 类构造器public Object(); registerNatives()方法; Clone()方法实现浅拷贝 wait() notify() notifAll() CLass类和Object类的关系...

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

Java

金九银十,查漏补缺:Java线程同步与实现

yanxinchi 发布于 2019-09-27

前言 为何要使用Java线程同步? Java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时,将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用,从而保证了该变量的唯一性和准确性。 但其并发编程的根本,就是使线程间进行...

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

Java

JUC之深入分析 CAS

4

hellas 发布于 2019-09-25

CAS ,Compare And Swap ,即比较并交换。Doug Lea 大神在实现同步组件时,大量使用CAS 技术,鬼斧神工地实现了Java 多线程的并发操作。 整个 AQS 同步组件、Atomic 原子类操作等等都是基 CAS 实现的,甚至 ConcurrentHashM...

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

Java

JAVA虚拟机原理

6

Harries 发布于 2019-09-25

编辑推荐: 本文来自于csdn,文章主要从一下几个方面来介绍程序计数器,虚拟机栈,本地方法栈,堆区,方法区及直接内存等等相关方面介绍。 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不...

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

Java

如何基于String实现锁?

zhuangli 发布于 2019-09-23

在某些时候,我们可能想基于字符串做一些事情,比如:针对同一用户的并发同步操作,使用锁字符串的方式实现比较合理。因为只有在相同字符串的情况下,并发操作才是不被允许的。 因为String 类型的变量赋值是这样的: String a = "hello world."...

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

Java

让人头大的各种锁,从这里让你思绪清晰

11

zhuangli 发布于 2019-09-23

个人博客 个人博客 这次我们来看锁 说到了锁我们经常会联想到生活中的锁,在我们日常中我们经常会接触到锁。比如我们的手机锁,电脑锁,再比如我们生活中的门锁,这些都是锁。 锁有什么作用呢? 说了这么多还是不清楚锁到底有什么用处?这一点就要深思我们为什么要使用锁,我们用手机锁是为了保障...

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

Java

Java基础知识点2

2

Harries 发布于 2019-09-22

并发体系 线程 线程安全 线程安全性:当多个对象访问同一个对象时,如果不考虑这些线程运行环境的调度与交替执行,也不需要额外的同步,或者进行调用方任何其它协调操作。调用这个对象都可以获得正确的结果,那这个对象就是线程安全的。 原子性 可见性 顺序的 线程实现: Runnable:函...

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

Java

Rxjava源码阅读指南

dulong 发布于 2019-09-22

本文不对Rxjava的基本使用进行讲解,仅对源码做分析,如果你对Rxjava的基本使用还有不清楚的,建议学习官方文档之后再阅读本文 ReactiveX文档中文翻译 Rxjava 本文会逐一解析Rxjava的create()、subscribe()、操作符、subscribeOn(...

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