自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Java】多线程:N个线程交替打印M个数的几种方法(无锁)

wait跟notifyAll的监视器还是有竞争风险,依然需要加锁(不如直接加锁互斥)需要一个Thread[]数组额外纯一下所有的线程对象。,个人做了点优化,不需要额外的now来计数。

2024-08-15 13:57:26 268

原创 【Java】Idea运行JDK1.8,Build时中文内容GBK UTF-8编码报错一堆方块码

在Windows系统本地运行一个JDK1.8的项目时,包管理用的Gradle,一就编码报错(所有的中文内容,包括中文注释、中文的String字面量),但程序还是正常运行。

2024-07-11 10:52:18 608

原创 【Java】垃圾回收学习笔记(二):分代假说与垃圾回收算法

*部分收集(Partial GC):**不完整收集整个Java堆的GC。又分为:新生代收集(Minor GC/Young GC):目标是新生代的GC老年代收集(Major GC/Old GC):目标是老年代的GC。目前只有CMS收集器会有只针对老年代的GC。混合收集(Mixed GC):目标是整个新生代和部分老年代的GC。目前只有G1收集器会有Mixed GC。**整堆收集(Full GC):**整个Java堆和方法区的GC。

2024-07-07 15:54:47 723

原创 【Java】垃圾回收学习笔记(一):Root Search 根可达算法+垃圾回收的起点

最近上班地铁上偶尔看看书,周末有空理一下,做个笔记。

2024-07-07 13:12:52 699

原创 【Java】CompletableFuture+Mockito单元测试不通过 Unnecessary stubbings detected

用的ForkJoinPool,会有一个线程1在后台异步执行updateNum的操作,因此猜测可能是当前test的线程0在异步过程中先结束了,导致线程0 Mock的stub并没有被线程1执行的待测试接口用到,导致。获取异步调用结果时,会阻塞当前线程直到异步操作结束返回。也就是说test的线程0不会提早结束,导致虚拟机栈中的stub在被线程1 调用之前被回收。既然Test的线程0结束的太早,那么强行让他多等一会是不是就好了?结果测试通过,证明之前的猜想应该是对的。mock的stub没被用到,然后测试不通过。

2024-07-05 11:22:56 846

原创 【Java】Flyway数据库管理工具的基本原理

最近实习做的几个项目都用到了Flyway来做数据库的版本管理,顺便了解了下基本原理,做个记录。详细的使用就不写了,网上教程很多。

2024-06-27 21:31:06 791

原创 AutoTokenizer.from_pretrained报错TypeError: expected string or bytes-like object

网断了,连上网就好了。

2024-06-24 20:22:56 346

原创 【Java】有关StampedLock的笔记+StampedLock的队列与AQS有什么区别

核心就是使用戳记(stamp)的方式来标记数据的版本,乐观读的时候就是对比stamp来保证线程安全,而获取锁的方法返回的stamp则是通过state属性位运算得到的。:在读的时候如果发生了写,应该通过重试的方式来获取新的值,而不应该阻塞写操作(乐观读,无锁编程,类似CAS的思想)如果在执行乐观读操作时,另外的线程对共享变量进行了写操作,则会把乐观读升级为悲观读锁,比如下面的。内部是基于CLH锁实现的,CLH是一种自旋锁,且是公平的(保证FIFO,不会有锁饥饿)的场景,它性能之所以比。:如果某个线程阻塞在。

2024-05-23 13:02:43 674

原创 【DL笔记】TextGCN在文本分类中作弊了?Bag-of-Words vs. Graph vs. Sequence in Text Classification论文笔记

标题有点标题党了,就是有关ACL2022一篇论文的一些笔记,按自己的理解写的,比较粗糙,细节建议阅读原文,有错误欢迎指出。

2024-05-08 16:27:21 939

原创 【Java笔记】多线程:一些有关中断的理解

线程中断可以使一个线程从变成使用线程中断,并不是要把线程给终止或是杀死,而是让线程不再继续等待,而是让线程不再继续等待,线程可以继续往下执行代码,线程发生中断后,会抛出一个中断的异常,决定如何处理就看业务代码怎么写。

2024-05-07 14:10:36 885

原创 【Java笔记】CAS比较的是什么+交换的是什么+自旋到啥时候

CAS(Compare And Swap )是乐观锁的一种实现方式,是一种轻量级锁,其实就是无锁实现,在不使用锁(没有线程被阻塞)的情况下实现多线程之间的变量同步。

2024-05-02 17:00:59 1067

原创 【Java笔记】JVM:对象在内存中是什么样的?如何计算对象占用的内存大小?

Object类本身不含成员变量,所以instance data为0,两个header word总共位8+4=12B,Padding补齐为16字节。可以看出,由于String是另一个对象,Mycalss的instance data。openjdk jol提供了计算对象内存布局的方法,即。

2024-04-30 14:46:20 1246 2

原创 【Java笔记】理解Java Memory Model+内存可见性+指令重排序

一些概念大杂烩。

2024-04-30 12:44:24 513 1

原创 【Java笔记】如何创建自己的注解+注解怎么用于反射+SpringBoot常见注解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。注解就是我们平常看到的@开头的玩意儿,有时候加载方法上,有时候又会加在类、变量、参数上。别的注解没见过,那@Override总见过吧?这就是Java内置的注解之一。大概格式如下可以看到用了几个元注解:注解会在class字节码文件中存在,在运行时可以通过反射获取到;:注解可以加在函数方法上;:可有可无,希望加入javadoc就加上。我们也可以给注释绑定一些数据:其中,default可以指定默认值。

2024-04-21 12:40:24 952

原创 【Java笔记】多线程2: 加锁小练习(卖票+交替打印+哲学家就餐)

练习下Thread,Runnable,synchronized, Lock,稍微记录下。

2024-04-19 23:14:32 628

原创 【MySQL笔记】InnoDB的插入缓存+非聚簇索引插入的离散性理解

Insert Buffer 就是用于提升非聚集索引页的插入性能的,其数据结构类似于数据页的一个B+树,物理存储在共享表空间ibdata1中。

2024-04-16 11:59:37 858

原创 【Java笔记】多线程1:线程池大小为什么设置N+1或2N?CPU密集型?IO密集型?

需要注意的是,N是最大并行数,而不是“X核CPU”的X。一般我们会听到例如“4核8线程”的说法,这里的8就是N,虽然只有4个CPU(核心),但是可以利用超线程技术把原来CPU4个线程虚拟成8个。首先要明确,2N跟N+1都是经验值,大家能明白大概的逻辑就行。

2024-04-07 15:07:52 1491

原创 【Java笔记】多线程0:JVM线程是用户态还是内核态?Java 线程与OS线程的联系

复盘一下Java中,JVM线程与实际操作系统中线程的一些联系

2024-04-04 17:53:31 1342 1

原创 【MySQL笔记】行转列+列转行+行转列为什么用SUM()

用于连接两个以上的 SELECT 语句的结果组合到一个结果集合,并去除重复的行。union 连接的语句中只会出现一个order by (不包含子查询中的)的使用场景应该就是“统计各产品在所有store的总价/均价”之类,比如。大部分人可能都有这个疑惑,为什么还要加个聚合函数。回到我们上面行转列的语句,我们只看一个字段先。操作符在合并结果集时会去除重复行,而。操作中的列数和数据类型必须相同。我们熟悉的聚合函数+

2024-04-01 08:00:00 697

原创 【Java笔记】实现延时队列(小结):JDK DelayQueue&MQ&Redis

RabbitMQ中消息或队列具有一个属性,TTL(Time To Live),表明一条消息或者队列中的所有消息的最大存活时间// 设置队列的TTL// 设置每条消息的TTL如果同时配置了队列的TTL和消息的TTL,就用较小值如果设置队列的TTL:消息过期就会被队列遗弃如果设置消息的TTL:消息过期会在即将送给消费者时确定,不会马上丢弃不设置TTL:消息永不过期如果将TTL设置为0:如果不能马上给到消费者就会被丢弃稍微总结一下延迟队列主要用于xxx事件之后/之前,执行xxx。

2024-03-31 08:00:00 1371 1

原创 【Java笔记】实现延时队列2:Redis

SETEXZSET。

2024-03-30 22:25:36 680

原创 【Java笔记】实现延时队列1:JDK DelayQueue

JDKDelayQueue是一个无阻塞队列,底层是。

2024-03-30 19:28:38 406

原创 【MySQL笔记】SELECT COUNT(*) 的时候,加不加where条件有差别吗?

这部分很多帖子都只在问题里罗列下,好像也没详细解答其实就是跟InnoDB优先走二级索引的优化有关,前面也提到了”优化的前提是查询语句中不包含where条件和group by条件还不太了解这个优化的朋友可以看上一篇帖子。

2024-03-30 14:08:34 621

原创 【MySQL笔记】梳理下COUNT(*),COUNT(1),COUNT(字段名)区别、查询过程及常见问题

COUNT今天复盘了以下这个经典面试问题,做个记录返回SELECT语句查询的行中expr不为NULL的数量结果是一个BIGINT顺便回顾下几个INT的区别类型大小有符号范围无符号范围TINYINT1 Bytes(0, 2^8)SMALLINT2 Bytes(0, 2^16)MEDIUMINT3 Bytes(0, 2^24)INTINTEGER4 Bytes(0, 2^32)BIGINT8 Bytes(0, 2^64)如果查询没有任何结果,返回0COUNT(字段名)

2024-03-30 14:04:10 1893

原创 【Java笔记】Optional如何处理空指针异常 & 为什么不建议get()

Optional普遍用于方法的返回类型,表示方法可能不返回结果(即返回null)

2024-03-29 20:46:03 1266 1

原创 【Java笔记】Lambda表达式

Lambda表达式是Java函数式编程的核心概念之一,是一种语法糖用于简化实现函数式接口Functional Interface。

2024-03-29 14:26:53 1915 1

原创 【Java笔记】Generics 泛型

一些Java Generics的学习笔记

2024-03-29 12:22:59 938 1

原创 【Java笔记】Reflection的一个实践(模拟框架的服务管理与服务注入)

Java反射机制的一个实践案例,模拟框架的服务注册于注入

2024-03-29 10:01:49 1314 1

原创 【Java笔记】类的静态初始化块

下面代中{}的内容就是初始化块初始化块会在类创建实例时自动执行,如果有多个初始化块则按顺序执行。

2024-03-28 14:56:49 176 1

原创 MacOS ParallelDesktop安装CentOS7及SSH配置

相关镜像文件这个UP简介里有给,中间踩了点坑,装好之后结果密码忘了,就重装顺便记录下。

2024-03-12 22:29:49 1586 1

原创 【附源工程】基于Android Studio+Java的解谜向Galgame游戏

这是一个基于 Android Studio 与 Java 的 Android 端的小游戏,可以看作结合 RPG 与 GalGame 模式的解密攻略类游戏, 包含背包系统、地图系统、交易系统、存档系统等。如果有需要,之后有空可以细说。虽然比较粗糙,但属于是第一个自己正经做完的玩意,所以记录一下,工程已经放在github了。

2024-03-11 21:13:12 960

原创 有关“Token防范CRSF攻击”的理解

就是Cross-site request forgery 跨站请求伪造简单来说就是你访问了一个奇怪的坏网站,被坏网站诱导向另一个网站攻击看到个很形象的例子当你登录一个网站A后,在没有登出的情况下,你又跑到一个其他的论坛上闲逛,然后你看到一个美女的图片,你出于好奇心,点击了美女图片,这个时候,可能就被攻击了;原因是美女图片的的超链接(link)可能是不法分子弄的,指向的可能是A网站,由于你在A网站还是登陆态,那么你点击的这个link就是以你登录态的进行的,比如可以用你的登录态发布评论;严重的可能进行转账。

2024-03-08 23:17:09 423 1

原创 MacOS Nginx前端部署+常用命令+更改端口

记录一下看黑马web课的时候看windows选手部署只要解压运行exe就部署好了,那一瞬间忘了怎么在macos上操作,这里记录下。

2024-03-06 13:24:50 1461 1

原创 【DL笔记】Conda虚拟环境下安装cuda cudnn+PaddlePaddle安装+PaddleDetection

主要想用下PaddleDetection,然后碰到了一堆问题,大部分最后发现都是环境没装好造成的,所以再这里记录一下:版本一定要装对!版本一定要装对!版本一定要装对!版本一定要装对!版本一定要装对!

2024-03-04 13:08:47 1284

原创 【DL笔记】Tiny ImageNet 图像分类数据集的下载与使用

Tiny ImageNet数据集的使用

2023-07-24 15:52:27 3842

原创 【DL笔记】mobileNetv2中的_make_divisible

mobileNetv2中的_make_divisible函数的一些理解记录

2023-02-11 14:52:10 2122 1

空空如也

空空如也

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

TA关注的人

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