java
文章平均质量分 78
red-Rain
是什么,为什么,怎么做,原理是
展开
-
java锁初步认识
java锁初步认识锁在java中使用最多的是在对象上面,java对象的简单对象指针Oop的markWord中记录了锁标志,01:无锁,偏向锁00:轻量锁(cas)10:重量锁,阻塞11:Gc标志偏向锁:jdk开发者发现大多时候,一个线程将占有使用一个持有锁对象很久,很少有竞争者,这种情况并不需要锁。所以就记录持有锁的线程id在对象中,下次访问资源的如果还是该线程则放行轻量锁:对象处于偏向锁状态,如果再次访问资源的线程并不是记录的线程id,则升级为轻量锁,轻量锁使用cas(比较替换)方法。具原创 2022-04-14 14:57:33 · 276 阅读 · 0 评论 -
线程池了解
线程池了解多线程实现: 一是实现Runnable接口,然后将它传递给Thread的构造函数,创建一个Thread对象;二是直接继承Thread类什么是线程池?线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理。如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。为什么要使用线程池?创建线程和销毁线程的花销是比较大的,这些时间有可能比处理业务的时间还要长。这样频繁的原创 2022-04-14 14:55:08 · 305 阅读 · 0 评论 -
flink内存管理认识
了解flink内存管理对理解flink作业有很大的帮助,也可以解决一些程序运行问题,所以接下来进行flink的内存管理学习本次学习的主要资料来源是flink中文学习网站 ververiva.cn上图是flink资源调度划分,job是任务级别的,task是进程级别,进程级别是程序执行的最小单位,所以我将详细了解task的内存管理情况如下图所示,看上去有点眼花缭乱,怎么一个小小的slot里要区分这么多内存类型?貌似因为在以后slot有望进行slot之间的资源共享,也就是不耗内存的slot可以分一些资源给原创 2020-11-25 10:48:52 · 341 阅读 · 0 评论 -
关于锁的认知探究
关于锁的认知探究临界资源,临界区:每个进程中访问临界资源的那段代码称为临界区。若能保证诸进程互斥地进入自己的临界区,便可实现诸进程对临界资源的互斥访问。为此,每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,看它是否正被访问。如果此刻该临界资源未被访问,进程便可进入临界区对该资源进行访问,并设置它正被访问的标志;如果此刻该临界资源正被某进程访问,则本进程不能进入临界区。在操作系统中,有临界区的概念。临界区内放的一般是被1个以上的进程或线程(以下只说进程)共用的数据。临界区内的数据一次只能同时被一个原创 2020-11-14 21:11:45 · 146 阅读 · 0 评论