标签:synchronized
Harries Blog™ - xiaoli.wang 发布于 2020-07-26
我是一个优秀的人,但也有缺点,比我优秀的人有很多很多。连自己都认输,何谈你的对手,与你一样优秀,甚至比你优秀的人。战胜自己,就是最大的超越。 在Java5.0之前,协调对共享对象的访问可以使用的机制只有synchronized和volatile。我们知道synchronized关...
阅读(1981)赞 (1)标签:API / db / final / http / https / id / IO / java / JVM / list / node / queue / rsync / synchronized / UI / volatile / zab / 代码 / 参数 / 同步 / 多线程 / 字节码 / 安全 / 实例 / 希望 / 并发 / 开发 / 文章 / 时间 / 构造方法 / 源码 / 线程 / 线程同步 / 锁 / 静态方法
Harries Blog™ - Harries 发布于 2020-07-26
![]()
最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好。原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都是站在Java后端的全局上进行思考和总结的,忽略了很多小白们的感受,而很多朋友都需要更加基础,更加详细的学习路线...
阅读(2068)赞 (1)标签:amqp / AOP / apache / API / cat / Codis / db / Docker / dubbo / eclipse / Elasticsearch / ELK / git / GitHub / Hadoop / HBase / HDFS / http / https / id / IDE / IO / ioc / ip / java / java基础 / JDBC / JVM / linux / list / map / maven / message / MQ / mysql / Mysql数据库 / Netty / Nginx / NIO / OpenStack / ORM / queue / rabbitmq / redis / RocketMQ / scala / session / solr / spring / Spring cloud / springboot / SpringMVC / sql / sqoop / src / stream / synchronized / tar / TCP / tomcat / UI / unix / volatile / web / zookeeper / 一致性 / 下载 / 专注 / 云 / 互联网 / 产品 / 代码 / 企业 / 免费 / 分布式 / 分布式事务 / 分布式系统 / 分布式锁 / 功夫 / 协议 / 博客 / 参数 / 同步 / 域名 / 基金 / 备份 / 多线程 / 大数据 / 学生 / 安全 / 安装 / 实例 / 工程师 / 希望 / 并发 / 并发编程 / 开发 / 开发者 / 开源 / 微信公众号 / 微服务 / 总结 / 搜索引擎 / 操作系统 / 教材 / 数据 / 数据库 / 文章 / 时间 / 智能 / 服务器 / 服务注册 / 服务端 / 架构师 / 模型 / 注册中心 / 测试 / 消息队列 / 源码 / 目录 / 程序员 / 端口 / 管理 / 索引 / 线程 / 缓存 / 编译 / 网站 / 虚拟化 / 解析 / 设计模式 / 负载均衡 / 质量 / 软件 / 进程 / 部署 / 配置 / 锁 / 限流 / 集合类 / 集群 / 高可用
Harries Blog™ - 邓龙华 发布于 2020-07-26
内置异常和Throwable核心方法 Java内置异常 可查异常(必须要在方法里面捕获或者抛出) ClassNoFoundException 应⽤程序试图加载类,找不到对应的类 IllegalAccessException 拒绝访问⼀个类的时候 NoSuchFieldExceti...
阅读(1946)赞 (1)标签:ACE / cat / final / HTML / http / id / IO / java / message / ORM / remote / synchronized / 代码 / 参数 / 总结 / 索引 / 需求
Harries Blog™ - Harries 发布于 2020-07-26
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
上文已经介绍了JVM内存模型中线程私有的部分(虚拟机栈、本地方发栈、程序计数器),那么本篇文章就来探讨下JVM中线程共享的区域:堆、方法区 方法区 方法区是JVM规范中定义的一个逻辑内存,在JDK1.8以前对方法区的实现叫做“永久代”,然而在JDK1.8以后讲“永久代”废弃,改为...
阅读(1991)赞 (1)标签:App / bean / cat / Full GC / http / https / id / IO / java / JVM / LinkedList / list / mongo / python / Region / root / src / synchronized / UI / Word / 代码 / 内存模型 / 参数 / 同步 / 垃圾回收 / 处理器 / 多线程 / 安全 / 实例 / 并发 / 开发 / 开发者 / 微软 / 数据 / 文章 / 时间 / 构造方法 / 模型 / 生命 / 程序员 / 空间 / 管理 / 类加载器 / 线程 / 缓存 / 编译 / 解析 / 遍历 / 锁 / 高并发
Harries Blog™ - darida 发布于 2020-07-26
![]()
![]()
![]()
![]()
前言 前段时间买本书研究了 TCP/IP 通信,弄清楚了计算机之间是怎么通信的。网络通信的的基础就是 TCP/IP 协议簇 ,也被称为 TCP/IP 协议栈 ,也被简称为 TCP/IP 协议 。 TCP/IP 协议 并不是只有 TCP 和 IP 协议,只是这俩用的比较多,就用这两...
阅读(155)赞 (0)标签:ACE / API / bean / BIO / cat / client / ConcurrentHashMap / Connection / cookies / core / CTO / db / DNS / Document / executor / final / ftp / git / GitHub / grep / HashMap / http / https / id / IDE / IO / ioc / IOS / ip / java / key / linux / list / map / message / MQ / Netty / NIO / provider / queue / rand / Select / src / ssh / stream / struct / synchronized / tab / tar / TCP / ThreadPoolExecutor / trigger / UI / 二维码 / 互联网 / 代码 / 删除 / 协议 / 博客 / 参数 / 同步 / 安全 / 安装 / 实例 / 并发 / 微信公众号 / 数据 / 文件系统 / 文章 / 时间 / 服务端 / 模型 / 测试 / 空间 / 端口 / 管理 / 线程 / 线程池 / 网卡 / 遍历 / 配置 / 锁
Harries Blog™ - darida 发布于 2020-07-26
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
前言 在阅读完 JUC 包下的 AQS 源码之后,其中有很多疑问,最大的疑问就是 state 究竟是什么含义?并且 AQS 主要定义了队列的出入,但是获取资源、释放资源都是交给子类实现的,那子类是怎么实现的呢?下面开始了解 ReentrantLock。 公众号:liuzhihan...
阅读(137)赞 (0)标签:ACE / final / http / https / id / IO / java / node / queue / rsync / src / synchronized / UI / zab / 代码 / 同步 / 开发 / 总结 / 文章 / 时间 / 源码 / 程序员 / 类图 / 线程 / 锁
Harries Blog™ - hanze 发布于 2020-07-26
![]()
![]()
![]()
![]()
前言 熬夜整理了一份java基础面试题,希望大家支持,如果文中有错误希望大家指正; 公众号:知识追寻者 知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;) 一 java基础面试 ...
阅读(116)赞 (0)标签:ACE / AIO / ArrayList / BIO / build / cat / CEO / Collection / Collections / ConcurrentHashMap / CTO / equals / final / HashMap / HashSet / HashTable / HTML / http / https / id / IO / ip / java / java基础 / JVM / key / LinkedList / linux / list / map / NIO / node / queue / SDN / Select / src / stream / synchronized / tab / UI / unix / value / zab / 代码 / 删除 / 升级版本 / 占用空间 / 参数 / 同步 / 图片 / 垃圾回收 / 基本原则 / 多线程 / 字节码 / 安全 / 实例 / 希望 / 并发 / 开发 / 数据 / 文章 / 时间 / 模型 / 源码 / 生命 / 程序员 / 空间 / 索引 / 线程 / 缓存 / 编译 / 遍历 / 锁 / 静态方法
Harries Blog™ - 刘莉莉 发布于 2020-07-26
![]()
ArrayList 内部是以动态数组的形式来存储数据的。这里的动态数组不是意味着去改变原有内部生成的数组的长度、而是保留原有数组的引用、将其指向新生成的数组对象、这样会造成数组的长度可变的假象。 ArrayList 具有数组所具有的特性、通过索引支持随机访问、所以通过随机访问Ar...
阅读(139)赞 (0)标签:ArrayList / Collection / Collections / DOM / final / http / https / id / IO / java / java基础 / LinkedList / list / rand / src / synchronized / UI / value / zab / 代码 / 删除 / 参数 / 多线程 / 安全 / 实例 / 希望 / 并发 / 总结 / 数据 / 构造方法 / 源码 / 空间 / 索引 / 线程 / 遍历
Harries Blog™ - xiaoli.wang 发布于 2020-07-25
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
在jdk7及以前,习惯上把方法区称为永久代。jdk8开始,使用元空间取代了永久代。 本质上,方法区和永久代并不等价。仅是对hotSpot而言的。《java虚拟机规范》对如何实现方法区,不做统一要求。例如:BEA JRockit/IBM J9中不存在永久代的概念。 现在看来,当年使...
阅读(115)赞 (0)标签:ACE / bug / CEO / cglib / client / constant / CTO / db / dubbo / eclipse / final / Full GC / http / https / IBM / id / IDE / IO / ip / java / js / JVM / lib / mina / root / src / stream / synchronized / tab / UI / value / volatile / web / windows / 京东 / 代码 / 内存模型 / 压力 / 参数 / 垃圾回收 / 域名 / 字节码 / 实例 / 小米 / 开发 / 总结 / 数据 / 数据库 / 时间 / 服务器 / 本质 / 模型 / 测试 / 物理内存 / 生命 / 百度 / 空间 / 类加载器 / 索引 / 缓存 / 编译 / 美团 / 解析 / 需求
Harries Blog™ - 小丁 发布于 2020-07-25
![]()
![]()
![]()
![]()
❝ 其实生活中的坑,都是自己挖的,迷茫也是。愿我们内心坚定而且不失热爱,期待与你的共同进步。 ❞ 依赖关系的处理 上一篇文章中,通过 createBeanInstance() 方法,最终得到了 BeanWrapper 对象。再得到这个对象之后,在Spring中,对于依赖 关系...
阅读(116)赞 (0)标签:ACE / App / bean / BeanDefinition / cat / CEO / Collection / ConcurrentHashMap / CTO / db / dependencies / description / final / find / HashMap / HashSet / HTML / http / https / id / IO / ioc / ip / java / js / key / Lua / map / Property / rmi / root / Service / spring / src / strace / struct / synchronized / tab / tar / tk / UI / value / XML / 代码 / 删除 / 处理器 / 实例 / 开发 / 总结 / 数据 / 文章 / 时间 / 构造方法 / 模型 / 源码 / 缓存 / 解析 / 详细分析 / 配置
Harries Blog™ - songhua.gao 发布于 2020-07-25
![]()
死锁是指两个或多个以上的进程在执行过程中,因争夺资源而造成一种互相等待的现象,若无外力干涉那他们都将无法推进下去,如果资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。 产生死锁的原因 系统资源不足 进程运行推进的顺序不对 资源分...
阅读(90)赞 (0)标签:ACE / cat / final / http / https / id / IDE / IO / js / jstack / src / synchronized / tar / UI / 代码 / 参数 / 解决方法 / 进程 / 锁
Harries Blog™ - dulong 发布于 2020-07-25
ArrayList就是动态数组,其实就是Array的复杂版本,它提供了动态的添加元素和删除元素的方法,同时实现了Collection 和 List接口,能够灵活的设置数组的大小。 通过源码的分析,我们可以看到ArrayList有三种构造方法 空的构造函数 根据传入的数值大小,创建...
阅读(100)赞 (0)标签:ACE / ArrayList / Collection / CTO / DOM / final / http / https / id / IO / LinkedList / list / rand / synchronized / value / 代码 / 删除 / 参数 / 同步 / 多线程 / 快的 / 总结 / 数据 / 构造方法 / 源码 / 线程 / 遍历
Harries Blog™ - xiaoli.wang 发布于 2020-07-25
上一篇我们有讲到使用 context:component-scan 标签,注册扫描器之后,扫描器可以把目标包下面有符合过滤器条件(默认情况下会注册一个 @Component 注解的 AnnotationTypeFilter )的类封装成 beanDefinition 并且注册到 ...
阅读(136)赞 (0)标签:ACE / App / ArrayList / bean / BeanDefinition / bug / cache / cat / CEO / cglib / classpath / Collection / CTO / db / equals / final / HashMap / HashSet / http / https / id / IDE / IO / ioc / ip / java / JVM / key / lib / list / Lua / map / parse / Property / Proxy / rmi / root / Select / Service / spring / struct / synchronized / tab / tar / token / UI / value / XML / 代码 / 博客 / 原理分析 / 参数 / 处理器 / 字节码 / 实例 / 工作原理 / 快的 / 注释 / 源码 / 生命 / 管理 / 缓存 / 自定义标签 / 解析 / 递归 / 配置
Harries Blog™ - xiaoli.wang 发布于 2020-07-24
原文链接: https://blog.csdn.net/xiangzh… 5、类加载器 程序在启动的时候,并不会一次性加载程序所要用的所有class文件,而是根据程序的需要,通过Java的类加载机制(ClassLoader)来动态加载某个class文件到内存当中的,从...
阅读(132)赞 (0)标签:Android / App / ArrayList / Bootstrap / Collection / CTO / equals / final / HashMap / HashSet / HashTable / http / https / id / IO / java / Java集合 / JVM / key / LinkedList / list / map / SDN / ssl / synchronized / tab / value / 代码 / 免费 / 同步 / 多线程 / 安全 / 实例 / 数据 / 数据库 / 文件系统 / 模型 / 源码 / 空间 / 类加载器 / 索引 / 线程 / 线程同步 / 集合类
Harries Blog™ - puefu.he 发布于 2020-07-24
![]()
使用场景 先用一张图来描述使用的场景(图片获取至其他网站。) 总体来说就是方法和代码块2种方式。 代码块的同步 每个object在设计的时候,都是可以被monitor的,被锁住的,所以使用计数器的方式就可以解决这个锁的问题。 方法同步 这个按上一篇说讲,就是方法通过ACC_SYN...
阅读(131)赞 (0)标签:Android / http / https / id / IO / java / JVM / PHP / src / synchronized / tab / tar / UI / 代码 / 同步 / 图片 / 实例 / 并发 / 本质 / 索引 / 编译 / 网站 / 锁
Harries Blog™ - puefu.he 发布于 2020-07-24
![]()
1.基本并发方式 1.1 Callable 这个方式基本不用,会影响线程的思想。 2.线程池 Executor 2.1 ThreadExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, ...
阅读(87)赞 (0)标签:Android / cache / core / CTO / db / executor / final / http / https / id / IO / ip / java / JVM / PHP / queue / Service / src / synchronized / tab / tar / ThreadPoolExecutor / UI / value / zab / 同步 / 多线程 / 实例 / 并发 / 本质 / 索引 / 线程 / 线程池 / 编译 / 解析 / 锁 / 静态方法
Harries Blog™ - xubiao.zhuang 发布于 2020-07-24
什么是线程安全? 当一个线程在同一时刻共享同一个全局变量或静态变量时,可能会受到其他线程的干扰,导致数据有问题,这种现象就叫线程安全问题。 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题,但是做读操作...
阅读(105)赞 (0)标签:Atom / cat / http / https / id / IDE / IO / java / Java内存模型 / synchronized / tar / volatile / 代码 / 内存模型 / 原子类 / 同步 / 处理器 / 多线程 / 字节码 / 安全 / 实例 / 并发 / 总结 / 数据 / 文章 / 模型 / 线程 / 线程同步 / 缓存 / 编译 / 重排序 / 银行 / 锁 / 静态方法
Harries Blog™ - changyuan.xu 发布于 2020-07-23
![]()
在Java中总共有4中核心的引用类型——强引用、软引用、弱引用、虚引用。一般情况下我们往往用到强引用比较多,很少会遇到场景用到其他三种引用,所以对其原理的掌握就更加是一纸空白。此次,恰遇机会就正好研究一下这四种引用的原理,以解己惑。 关于强引用,因为日常使用,大家基本都比较清楚,...
阅读(83)赞 (0)标签:App / ask / cat / CEO / client / CTO / executor / final / http / https / id / IDE / IO / java / JVM / list / Master / queue / src / synchronized / tar / UI / update / volatile / 代码 / 垃圾回收 / 总结 / 数据 / 时间 / 源码 / 编译 / 翻译