Java最常用的三个锁:synchronized、AQS锁(以ReentrantLock为例)、CAS锁(以AtomicInteger为例)。 锁的分类 锁 悲观锁 总是害...
Java最常用的三个锁:synchronized、AQS锁(以ReentrantLock为例)、CAS锁(以AtomicInteger为例)。 锁的分类 锁 悲观锁 总是害...
LeetCode上有《买卖股票的最佳时机》系列题目。其输入通常是给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第i 天的价格。 股票经...
用三种方式,写一个前端页面。页面里有一个按钮,点击后数字逐渐增加。 React 核心部分 我觉得有 3 个特点 异步式的,也就是 useState ,然后 count 只读,...
看了前三篇贴子,恍惚之间,三年就已经过去了。本来想着每个季度进行一次复盘,结果鸽来鸽去,成为了年记。我现在坐在阿里巴巴滨江园区的工位上,上午完成了转正的答辩,后天将会从阿里离...
意向岗位:后端开发工程师 2023年秋招2023年7月20日晚 以下是面试的主要提纲,凭回忆 自我介绍 我说了学历、主要项目经历、实习经历 实习 实习干了什么工作、在什么背景...
在 Java 中,我们常常开启多个线程来提高运行效率。但是有时候我们需要这些线程的返回值。应该如何获取线程的返回值呢? 我现在有10万个整数,我需要开5个线程来找它们的最大值...
过于简单的就不说了,比如“equals()和==”有什么区别,相信大家都会。 Java与JVM知识 JVM的内存结构 程序计数器(Program Counter Regist...
Java中的线程安全容器主要有以下几种: ConcurrentHashMap:适用于高并发环境的哈希表,支持高效的并发读写操作。 CopyOnWriteArrayList:一...
volatile不保证原子性,但是保证了可见性、顺序性。synchronized保证原子性、可见性、顺序性。以下面代码为例: 在main中,我们启动了两个线程,分别是Read...
或许在做算法题的老手手里,0-1背包问题算不上什么难事。可以说是最简单的背包问题了。不过我之前还真没有写过0-1背包问题。我不去仔细介绍0-1背包问题了。OI Wiki上介绍...
Unchecked 异常 什么是 unchecked 异常 在 Java 中有形形色色的异常。如果要长篇大论的话,那么就如下段: Throwable 包括 Error 和 E...
正如大学生返乡需要等通知一样,Java 的多线程编程同样可以“等通知”。值得注意的是,wait/notify/notifyAll 是 Object 的方法,不是 Thread...
数据同步 数据不一致 在上一篇文章的例子中,我们让四台叫号窗口,叫号1~50,但是运行的时候,可能会出现各种各样的“bug”,包括 某个号码被略过 没有出现 某个号码重复出现...
先说一下我最朴素的理解,进程是应用程序的实例,进程之间的通信代价比较高;而线程就要更加轻量化,可以方便地完成相互之间的通信。 线程的创建 在Java中,线程也是一个类,是一个...
生活中我们经常会遇到选择问题,比如当我们要出去旅游时,会考虑是自驾、坐飞机还是坐火车前往目的地;或者在烹饪一条鱼时,是考虑清蒸、水煮还是烧烤;又或者商家在对商品促销时,是使用...
Java Virtual Machine,即Java虚拟机,缩写JVM,是Java软件运行的平台。JVM不直接作用于硬件,而是借助操作系统,通过操作系统来作用于硬件。 JVM...
Ⅰ类形容词和Ⅱ类形容词都各有两种连用形,分别被称为第一连用形和第二连用形。 Ⅰ类形容词的第一连用形 Ⅰ类形容词的第一连用形是将词尾的「い」变成「く」。例如: 高い→高く易しい...
两数、三数、四数之和 整体的题意是,在一个乱序的数组中,找到2个(或3个、4个)数,使得它们的和恰好等于目标值。 LeetCode上的题目,有的是返回数组的下标,有的是返回数...
版本控制系统 使用传统的方法,用文件来记录版本,很麻烦,经常要回滚、反复改等。 如果使用版本控制系统,可以有 Hash 算法来给每一个版本命名。 使用版本控制系统之后,就方便...
好专业