自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Python多线程(自学必备 超详细)

某个线程要更改共享数据时,先将其锁定,此时资源的状态为“锁定”,其他线程不能更改;直到该线程释放资源,将资源的状态变成“非锁定”,其他的线程才能再次锁定该资源。如果此时另一个线程试图获得这个锁,该线程就会变为“blocked”状态,称为“阻塞”,直到拥有锁的线程调用锁的release()方法释放锁之后,锁进入“unlocked”状态。线程就是在程序运行过程中,执行程序代码的一个分支,每个运行的程序至少都有一个线程。当一个线程调用锁的acquire()方法获得锁时,锁就进入“locked”状态。

2023-10-26 13:30:02 154

原创 JVM面试题(面试必备)

实现通过类的权限定名获取该类的二进制字节流的代码块叫做类加载器。启动类加载器(Bootstrap ClassLoader)用来加载 java 核心类库,无法被 java 程序直接引用。扩展类加载器(extensions class loader):它用来加载 Java 的扩展库。Java虚拟机的实现会提供一个扩展库目录。该类加载器在此目录里面查找并加载 Java 类。系统类加载器(system class loader):它根据 Java 应用的类路径(CLASSPATH) 来加载 Java类。

2023-10-26 00:11:07 70

原创 JVM宕机分析

Eclipse Memory Analyzer是一个非常好用的分析工具,我们可以利用它的Eclipse 插件轻松实现查看对象树、对象大小、生成报告,甚至自动化分析可能出现泄露的对象, 和其他插件的安装非常类似,MAT 支持两种安装方式,一种是“单机版“的,也就是说用户不必安装 Eclipse IDE 环境,MAT 作为一个独立的 Eclipse RCP 应用运行;通过上述的dump文件的分析,我们得到内存的可能泄露点有两个,都是占用了比较大的内存,通过分析内存泄露点来找到解决办法。

2023-10-18 03:11:43 290 1

原创 JVM介绍()

栈中的数据都是以栈帧(Stack Frame)的格式存在,栈帧是一个内存区块,是一个数据集,是一个有关方法(Method)和运行期数据的数据集,当一个方法A被调用时就产生了一个栈帧F1,并被压入到栈中,A方法又调用了B方法,于是产生栈帧F2也被压入栈,执行完毕后,先弹出F2栈帧,再弹出F1栈帧,遵循“先进后出”原则。栈也叫栈内存,是Java程序的运行区,是在线程创建时创建,它的生命期是跟随线程的生命周期,线程结束栈内存也就释放,对于栈来说不存在垃圾回收问题,只要线程一结束,该栈就Over。

2023-10-18 00:46:47 65 1

原创 Java-分布式锁的实现方式

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请轻击1、悲观锁利用 select … where … for update 排他锁。注意:其他附加功能与实现基本一致,这里需要注意的是“where name=lock”,name字段必须要走索引,否则会锁表。有些情况下,比如表不大,MySQL优化器会不走这个索引,导致锁表问题。2、乐观锁。

2023-10-12 00:26:43 59

原创 Java面试题之:sql优化方式

例如:select id from user where name=‘a’ or name=‘b’,可以改为以下的形式来提高查询的效率:select id from user where name=‘a’ union select id from user where name=‘b’;在使用like进行数据表的查询时,能用单%的情况下,不建议使用双%,双%查询会导致mysql引擎放弃使用索引而进行全表扫描查询,查询时尽量把%放后面,或者不适用%。查询数据库的数据尽量使用索引来查询,避免全表扫描。

2023-10-11 13:56:42 238

原创 java面试笔试资料 百度网盘

Java及求职/校招资源共享/上篇/互联网公司笔试面试题目/百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题.pdf。/求职/面试/面试宝典/面试题/笔试与面试/无公司名字的笔试题/N多大公司面试题.doc。/求职/面试/面试宝典/面试题/笔试与面试/已整理/阿里巴巴+java笔试题.doc。/求职/面试/面试宝典/面试题/笔试与面试/腾讯/腾讯求职资料(公司介绍).pdf。/求职/面试/面试宝典/面试题/笔试与面试/华为/华为Java笔试题 .txt。

2023-10-11 12:57:05 240

原创 Java面试中如何介绍自己的项目经验?

在做项目介绍的时候,你可以穿插说出一些你的亮点,但请记得,不论在介绍项目还是在回答问题,你当前的职责不是说明亮点而是介绍项目,一旦你详细说,可能会让面试官感觉你跑题了。所以这时你可以一笔带过,比如你可以说,“我们的项目对数据要求比较大,忙的时候平均每小时要处理几十万条数据”,这样就可以把面试官引入“大数据”的方向。你在面试前可以根据职位的需求,准备好这种“一笔带过”的话。

2023-10-11 12:06:57 251

原创 JAVA虚拟机JVM工作原理

这个类加载器负责将存放在lib目录中的,或者被-Xbootclasspath参数所指定的路径中的,并且是虚拟机识别的(仅按照文件名识别,如rt.jar,名字不符合的类库即使放在lib目录中也不会被加载)类库加载到虚拟机内存中。这个加载器由sun.misc.Launcher$ExtClassLoader实现,它负责加载libext目录中的,或者被java.ext.dirs系统变量所指定的路径中的所有类库,开发者可以直接使用扩展类加载器。身为JAVA小白,岂可不知!

2023-10-10 13:35:04 36 1

原创 Java学习路线图,全套Java基础视频教程

扎实的技术基础功+真实项目实战经验,才是好就业的关键。不止于此,黑马程序员帮助已就业学员继续提升!技术的提升永无止步,碎片时间学习进行各种技术强化:以上Java学习路线图均有课程+源码+笔记+资料。更多提升课程访问底部,即可获取持续成长技能!

2023-10-10 12:49:18 99 1

原创 Java多线程变量共享与隔离

比如number++,这个操作实际上是三个操作的集合(读取number,number加1,将新的值写回number),volatile只能保证每一 步的操作对所有线程是可见的,但是假如两个线程都需要执行number++,那么这一共6个操作集合,之间是可能会交叉执行的,那么最后导致number 的结果可能会不是所期望的。实例变量为对象实例私有,在虚拟机的堆中分配,若在系统中只存在一个此对象的实例,在多线程环境下,“犹如”静态变量那样,被某个线程修改后,其他线程对修改均可见,故线程非安全;

2023-10-10 10:26:22 626 1

原创 java.lang.IllegalStateException Error processing condition on org.springframework.boot.autoconfigur

从字面意思理解,看到placeholder,容易让人误以为是从配置文件读取什么配置项失败的意思,但是我的配置文件只配置了端口号,没有其他任何配置项。从以上这几个Cause by大概可以猜测,初始化失败的原因,要么是hystrix的版本不对(即与spring cloud的版本不兼容),要么是没有添加hystrix这个依赖。那这么多 Caused by 中,第一个Caused by 是最值得关注的(最好也结合之后的几个 Caused by)。以上的一大堆异常中,一开始我关注的是第一个异常。

2023-10-10 00:46:34 5016 1

原创 Java---Stream进阶

由于本文需要有一定的Stream基础,所以如果不懂什么是Stream的同学请移步:Java—Stream入门。

2023-10-10 00:45:41 40 1

原创 Java 面试题

基础:JDK 和 JRE 的区别== 和 equals 的区别基本类型和包装类对象使用 == 和 equals进行比较的结果?什么是装箱?什么是拆箱?装箱和拆箱的执行过程?常见问题?hashCode()相同,equals() 也一定为 true吗?final 在 java 中的作用final finally finalize()区别finally语句块一定执行吗?final 与 static 的区别return 与 finally 的执行顺序对返回值的影响String对象中的replace和replaceA

2023-10-10 00:45:02 42 1

原创 C#【高级篇】 C# 多线程

线程 被定义为程序的执行路径。每个线程都定义了一个独特的控制流。如果您的应用程序涉及到复杂的和耗时的操作,那么设置不同的线程执行路径往往是有益的,每个线程执行特定的工作。线程是轻量级进程。一个使用线程的常见实例是现代操作系统中并行编程的实现。使用线程节省了 CPU 周期的浪费,同时提高了应用程序的效率。到目前为止我们编写的程序是一个单线程作为应用程序的运行实例的单一的过程运行的。但是,这样子应用程序同时只能执行一个任务。为了同时执行多个任务,它可以被划分为更小的线程。

2023-10-09 23:23:42 44 1

原创 2023年Java学习路线图(适合自学详细版)

这里小千作为资深的教育培训机构,特意为大家整理分享一套零基础自学Java学习路线图,此学习路线一共分为七大阶段,希望可以帮助到大家。

2023-10-09 23:04:16 197

原创 Java面试知识点汇总

为了更加美好的明天而努力吧由于我不断补充,现在知识点已经比较庞杂,很多人私信我,说那一篇全是知识点太过庞杂,问我有没有整合的。。希望对大家有所帮助!

2023-09-15 18:42:41 28

原创 Java面试复习体系总结(2021版,持续更新)

祝各位能在春招秋招中拿到offer!有什么遗漏欢迎补充!更新与2021.3.5,把404的文章全部修正过来。

2023-09-15 18:19:33 62

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除