首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
java
秃了也弱了
创建于2023-11-02
订阅专栏
java
等 1 人订阅
共61篇文章
创建于2023-11-02
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
这是我见过解释java内部类最详细的一篇文章了
https://www.runoob.com/w3cnote/java-inner-class-intro.
【精选】volatile超详细讲解
很多小伙伴相信都会听说过volatile关键字,但是这个关键字有什么作用呢?也许大体也能明白,但是如果碰上较真的面试官,可能会直接蒙了。 volatile是java的一个关键字,volatile是Java虚拟机提供的轻量级的同步机制。 volatile有三个特...
【精选】我知道乐观锁,但是我的确不知道CAS啊,到底什么是CAS-CSDN博客
相信很多小伙伴对乐观锁、悲观锁都不陌生,但是说到java的cas,就蒙圈了。假如说主物理内存的值与expect的值相等,则修改成功,否则修改失败。System.out.println(atomicInteger.compareAndSet(5, 2021) + "现在值是...
Java-Atomic原子操作类详解及源码分析,Java原子操作类进阶,LongAdder源码分析-CSDN博客
Java从JDK1.5开始提供了java.util.concurrent.atomic包,这个包中的原子操作类提供了一种用法简单,性能高效,线程安全地更新一个变量的方式。【参考】 volatile 解决多线程内存不可见问题。对于一写多读,是可以解决变量同步问题,但是如果多写,同样...
java加载一个来自项目之外的java文件,执行其main方法的一种实现方式
近期有一个小想法,就是我一个springboot项目,想做一个给用户可以编写java代码并且直接在页面运行的功能。java类加载器、双亲委派、沙箱安全机制全都让你整明白(三万字,收藏慢慢啃)_秃了也弱了。1.从前端传过来java类的文本,保存在本地临时目录,生成对应的java文件...
java延时队列的使用与一种应用场景
目前项目中有这样一个场景:需要设置一个倒计时,倒计时结束后更新数据库中某个表状态。于是乎,我就想到了使用延时队列来处理这种场景。private TimeUnit timeUnit = TimeUnit.this.this.this.endTime = System.return ...
java之Semaphore信号量做限流
Semaphore信号量非常适合高并发访问,新系统在上线之前,要对系统的访问量进行评估,当然这个值肯定不是随便拍拍脑袋就能想出来的,是经过以往的经验、数据、历年的访问量,已经推广力度进行一个合理的评估,当然评估标准不能太大也不能太小,太大的话投入的资源达不到实际效果,纯粹浪费资源...
JDK8:Stream流0基础使用与深入理解,Stream流源码分析
流操作是Java8提供一个重要新特性,它允许开发人员以声明性方式处理集合,其核心类库主要改进了对集合类的API和新增Stream操作。Stream类中每一个方法都对应集合上的一种操作。将真正的函数式编程引入到Java中,能让代码更加简洁,极大地简化了集合的处理操作,提高了开发的效...
JDK8:Optional详解与源码分析,如何优雅的处理空指针
在日常开发中,NullPointerException相信所有人都见过,不管你是刚入行的萌新还是骨灰级玩家,对于它都是耳熟能详的。它的出现可以说无处不在,总是能在各种场景下出现。那么对于如何防止它的出现,我们平时都是被动的采用各种非空校验,但是它还是经常能出现在我们的视线中。Jo...
揭开volatile的神秘面纱——熟悉volatile 的内存语义
当声明共享变量为 volatile 后,对这个变量的读/写将会很特别。为了揭开 volatile 的神秘面纱,本文将介绍 volatile 的内存语义及 volatile 内存语义的实现。理解 volatile 特性的一个好方法是把对 volatile 变量的单个读/写,看成是使...
重入锁、死锁、活锁、公平非公平锁……一下子都给你屡清楚了
每当听公司大佬提起来,死锁、活锁、公平锁、非公平锁……自己也是知其然而不知其所以然。 自己特意去阅读了《Java并发编程实战》,终于将这些概念屡清楚了,在这里将自己的理解分享给大家。 所谓重入锁,指的是以线程为单位,当一个线程获取对象锁之后,这个线程可以再次获...
还在对java类、类的加载一知半解?这篇文章相信会解决你80%的困惑
以上的方法返回值的类型是一个Class类,此类是Java反射的源头,实际上所谓反射从程序的运行结果来看也很好理解,即:可以通过对象反射求出类的名称。Class c1 = Class.forName("com.myUtils.reflectUtils.learn.Syste...
使用java压缩文件成zip——三种方式压缩文件速度对比
写在前面使用Buffered缓冲流压缩使用nio的FileChannel压缩使用apache.对于大文件批量压缩的问题,实际上是非常消耗时间的,怎么能提高压缩速度呢? 在这里提供了三种方式压缩文件,咱们对比一下哪一个压缩速度更快。在这里提供了三个文件,压缩后的大小大概是1.1GB...
ForkJoin的使用——让多个任务并行执行
开发中遇到这么一个业务场景:有100个任务我需要执行,这几个任务之间并没有什么关联,只需要在这些任务都执行完毕之后,我需要一个最终的结果。 import java.util.import java.util.import java.util.concurrent.import j...
java8日期和时间API全解——更完善的日期和时间API
六、日期的修改七、TemporalAdjuster时间调节器TemporalAdjusters类中预定义实现自定义TemporalAdjuster 实现1.使用lambda表达式2.在 Java 8 之前,我们处理日期时间需求时,使用 Date、Calender 和 Simple...
LongAdder为什么在高并发下保持良好性能?LongAdder源码详细分析-CSDN博客
【参考】 volatile 解决多线程内存不可见问题。对于一写多读,是可以解决变量同步问题,但是如果多写,同样无法解决线程安全问题。 说明: 如果是 count++操作,使用如下类实现: AtomicInteger count = new AtomicInteger(); cou...
谈谈java并发锁(重入锁、读写锁、公平锁)
重入锁和读写锁,他们具有比synchronized更为强大的功能,并且有嗅探锁定、多路分支等功能。在需要进行同步的代码部分加上锁定,但不要忘记最后一定要释放锁定,不然会造成锁永远无法释放,其他线程永远进不来的结果。//感觉跟synchronized没啥区别,是对象锁。lock.S...
java 线程方法join的简单总结-CSDN博客
https://www.cnblogs.com/lcplcpjava/p/6896904.
LockSupport是做什么的?深入理解Java的三种线程等待通知机制-CSDN博客
在java.util.concurrent.locks包下,有一个不经常被人关注的类:LockSupport。用于创建锁和其他同步类的基本线程阻塞元语。 总共有如下几个方法: LockSupport类使用了一种名为Permit(许可)的概念来做到阻塞和唤醒线程的功能,每个线程都有...
java的socket读取一行就结束运行了?使用这种方法可以读取多行数据!
写一个socket的公共方法,结果发现socket读取一行数据就结束了,百思不得其解。在网上也找了一些资料,很多也有坑,这里贴出来自己用的两种方法,以后就不用一直找解决方案了。import java.io.import java.io.import java.io.import ...
下一页