JAVA基础篇
文章平均质量分 63
memory_cood
最穷不过讨饭不死终将出头
展开
-
Java synchronized锁升级过程简述(面试可用)
java 锁升级流程Synchronized 的锁升级流程是这样:无锁 ----> 偏向锁 ----> 轻量级 锁 ----> 锁自旋 ----> 重量级锁偏向锁 偏向锁,简单的讲,就是在锁对象的对象头中有个ThreaddId字段,这个字段如果是空的,第一次获取锁的时候,就将自身的ThreadId写入到锁的ThreadId字内,将锁头内的是否偏向锁的状态位置1.这样下次获取锁的时候,直接检查ThreadId是否和自身线程Id一致,如果一致,则认为当前线程已原创 2021-05-06 23:00:51 · 5821 阅读 · 15 评论 -
Java wait 方法和sleep方法的区别?,start方法和run方法,哪一个是创建启动一个线程?
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码原创 2021-04-17 20:21:02 · 263 阅读 · 2 评论 -
Java 多线程thread、Runnabel、Callable接口
实现方式一实现 Runnable 接口,重写run方法package com.linlijun.test;public class MultiThreadOne implements Runnable{ @Override public void run() { System.out.println("创建线程成功"); }}把实现类传入 thread 构造方法中,调用start 方法,创建线程package com.linlijun;imp原创 2021-04-13 23:06:49 · 233 阅读 · 3 评论