Java 并发编程之 ReentrantLock 源码分析 Java

Java 并发编程之 ReentrantLock 源码分析

我是一个优秀的人,但也有缺点,比我优秀的人有很多很多。连自己都认输,何谈你的对手,与你一样优秀,甚至比你优秀的人。战胜自己,就是最大的超越。 在Java5.0之前,协调对共享对象的访问可以使用的机制只有synchronized和volatile。我们知道synchronized关键字实现了内置锁,而volatile关键字保证了多线程的内存可见性。 在大多数情况下,这些机制都能很好地完成工作,但...
阅读全文
史上最全的Android面试题集锦(十) 编程技术

史上最全的Android面试题集锦(十)

原文链接: https://blog.csdn.net/xiangzh... 5、类加载器 程序在启动的时候,并不会一次性加载程序所要用的所有class文件,而是根据程序的需要,通过Java的类加载机制(ClassLoader)来动态加载某个class文件到内存当中的,从而只有class文件被载入到了内存之后,才能被其它class所引用。所以ClassLoader就是用来动态加载clas...
阅读全文
不会吧,你连Java 多线程线程安全都还没搞明白,难怪你面试总不过 Java

不会吧,你连Java 多线程线程安全都还没搞明白,难怪你面试总不过

什么是线程安全? 当一个线程在同一时刻共享同一个全局变量或静态变量时,可能会受到其他线程的干扰,导致数据有问题,这种现象就叫线程安全问题。 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题,但是做读操作时不会发生数据冲突问题。 线程安全解决办法? 1、如何解决多线程之间线程安全问题? 答:使用多线程之间同步s...
阅读全文
全网最全Spring面试题之高级篇整理总结(二)(共16题,附超详细解答) Spring

全网最全Spring面试题之高级篇整理总结(二)(共16题,附超详细解答)

1.谈谈你对springIOC和DI的理解,它们有什么区别? IoCInverseofControl反转控制的概念,就是将原本在程序中手动创建UserService对象的控制权,交由Spring框架管理,简单说,就是创建UserService对象控制权被反转到了Spring框架 DI:DependencyInjection依赖注入,在Spring框架负责创建Bean对象时,动态的将依赖...
阅读全文
Java 并发编程之 ConcurrentHashMap 源码分析 Java

Java 并发编程之 ConcurrentHashMap 源码分析

走好选择的路,别选择好走的路,你才能拥有真正的自己。 我们知道哈希表是一种非常高效的数据结构,设计优良的哈希函数可以使其上的增删改查操作达到O(1)级别。Java为我们提供了一个现成的哈希结构,那就是HashMap类,在前面的文章中我曾经介绍过HashMap类,知道它的所有方法都未进行同步,因此在多线程环境中是不安全的。为此,Java为我们提供了另外一个HashTable类,它对于多线程同步的...
阅读全文
全网最全!这份深入讲解jdk和jvm原理的笔记,刷新了我对JVM的认知 Java

全网最全!这份深入讲解jdk和jvm原理的笔记,刷新了我对JVM的认知

前言 前两天和朋友探讨技术的时候有聊到JVM和JDK这一块,聊到这里两个人就像高山流水遇知音那是根本停不下来,事后我想着趁现在印象还比较深刻就把这些东西整理起来分享给大家来帮助更多的人吧。话不多说,满满的干货都整理在下面了! JVM探究 jvm的位置 jvm的体系结构 堆里面有垃圾,需要被GC回收 栈里面是没有垃圾的,用完就弹出去了,栈里面有垃圾...
阅读全文
一篇文章带你深入了解Java集合 Java

一篇文章带你深入了解Java集合

二、数组和集合的区别 数组在存储多个数据方面的特点: 数组一旦初始化好之后,其长度就已经确定了 数组声明的类型,就决定了进行元素初始化时的类型,也就只能操作指定类型的数据了。例如: String[] arr; int[] arr1; Object[] arr2; 数组能存放基本数据类型和对象,而集合类中只能放对象。 ...
阅读全文
java SE基础 Java

java SE基础

JavaSE 基础知识速览 请你说说Java和PHP的区别? PHP暂时还不支持像Java那样JIT运行时编译热点代码,但是PHP具有opcache机制,能够把脚本对应的opcode缓存在内存,PHP7中还支持配置opcache.file_cache导出opcode到文件. 第三方的Facebook HHVM也支持JIT.另外PHP官方基于LLVM围绕opcache机制构建的Zend ...
阅读全文
Netty源码阅读之如何将TCP的读写操作和指定线程绑定 Java

Netty源码阅读之如何将TCP的读写操作和指定线程绑定

原文链接: http://xueliang.org/article/detail/20200712234015993 前言 在Netty的线程模型中,对于一个TCP连接的读写操作,都是由一个单线程完成的,对于刚入门Netty的新手,这完全颠覆我们熟知的多线程能够加快处理速度,缩短处理时间的常规思路。 实际上,Netty采用了异步通信模式,一个IO 线程可以并发处理N 个客户端连接和读...
阅读全文
Loading...