- 博客(293)
- 资源 (2)
- 收藏
- 关注
原创 JUC-CompletableFuture
CompletableFuture.allOf() 可以用于等待所有任务完成,thenCombine() 和 thenCompose() 可以将多个异步任务的结果合并。使用 thenApply()、thenAccept() 和 thenRun() 方法,可以将多个任务串联起来进行顺序执行,实现异步任务的链式处理。接口在获取结果时,如果任务未完成,会阻塞,直到任务完成,或超时。当任务完成时,应用指定的函数对结果进行转换,并返回一个新的。任务完成时,执行指定的动作,对结果进行消费,无返回值。
2024-10-10 22:58:00
791
原创 线程安全-原子性,可见性,有序性
在并发时,程序的执行可能会出现乱序。给人的直观感觉就是:写在前面的代码,会在后面执行,这是因为高并发场景下,多个线程共同进入到同一块代码逻辑中造成的。每个线程都有自己的工作内存,线程在执行操作时,会将共享变量读入到自己的工作内存中,从而导致了贡献变量在线程之间的不可见。可以保证同步代码块在同一时间内只有一个线程能够进入,因此也能保证一定的有序性。但是它不能禁止指令重排序。主要是通过在编译是,在指令序列中添加内存屏障实现的。一组操作要执行就都执行,不执行就都不执行。共享变量的修改对所有线程可见。
2024-10-09 22:13:19
418
原创 JUC-ReentrantLock 锁粒度为什么更小
ReentrantLock 可以通过构造方法传参,设置为公平锁,就会按照线程的请求顺序获得锁,先到先得。synchronized 中的线程一旦进入阻塞状态,除非锁被释放,否则无法中断退出。ReentrantLock 可以选择在等待锁的时候中断退出,而不必一直等待锁释放。在一定时间内如果没有获取锁,就会放弃锁的竞争,而不必一直等待。可以在不阻塞的情况下获得锁,通过。
2024-10-07 20:13:29
404
1
原创 有趣的多线程之:累计相加
耗时大概 15s 结果:499999999500000000。显然不是,当线程数过多时,上下文切换也会增加耗时。10线程耗时大概 2.6s。
2023-12-24 22:42:03
782
2
原创 遇到解决不了的问题,你会怎么办
但是工作中,我们很难找到这样的老师。很多时候,当你遇到一个解决不了的问题,请教别人,你能得到的只是一个方案,这个方案,可能可行,也可能不可行。我记得高中那会,遇到不会的问题,一定会去问老师,因为他们总能给你全新的思路,让你获益匪浅。不知道大家平常工作中或者学习中遇到问题都是怎么解决的?那么这时候你又该怎么办呢?这周都在面临这个问题。
2023-12-09 00:44:44
406
原创 k8s(三): 基本概念-ReplicaSet与Deployment
ReplicaSet 的目的是维护一组在任何时候都处于运行状态的 Pod 副本的稳定集合,通常用来保证给定数量的、完全相同的 Pod 的可用性。
2023-12-02 21:19:30
1565
1
原创 k8s(二):Pod
pod 是K8s中最小的可部署单元,用于容纳一个或多个容器。Pod为容器提供了一个共享的环境,包括网络命名空间、存储卷和IP地址。
2023-12-02 20:05:07
1234
原创 k8s(一):基本概念
在Kubernetes系统中,Kubernetes对象是持久化的实体。哪些容器化应用正在运行可以被应用使用的资源关于应用运行时行为的策略:重启策略,升级策略,容错策略在k8中使用yaml格式的文件表示Kubernetes对象。几乎每个对象都包含两个嵌套的对象字段对象spec(规约)和对象status(状态)spec表示你希望对象所具有的特征,期望状态status对象当前的状态描述对象的yaml文件中必须具备的字段apiVersion。
2023-12-02 16:34:47
1307
原创 java实现二叉树的遍历与构造以及三个简单问题
输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)B是A的子结构, 即 A中有出现和B相同的结构和节点值。例如:41返回 true,因为 B 与 A 的一个子树拥有相同的结构和节点值。
2023-07-23 14:40:09
263
原创 fastJson遇到的坑之造轮子实现按优先级将实体类的属性与属性值拼串
之前写过一个公共方法,实现对一个表的存储,但是今天报了个测试问题。排查问题的时候发现,如果不把所有字段的值打印出来,不便于问题的定位。但是由于我们的实体类是通过代码生成工具自动生成的,并且没有重写toString。
2023-04-21 23:50:51
498
原创 华为机试 HJ38 求小球落地5次后所经历的路程和第5次反弹的高度【Java实现】
华为机试 HJ38 求小球落地5次后所经历的路程和第5次反弹的高度【Java实现】
2022-08-09 20:35:28
296
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人