自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA线程-CAS原理

目录1.CAS介绍2.应用场景1.CAS介绍CAS全称为CompareAndSwap,直译为“比较并替换”。其实CAS的应用场景非常多,但实际在开发很难感知到,更多的做为一种思想或底层实现封装起来。常见的如:乐观锁、volatile、AtomicInteger、AtomicBoolean、JUC包的并发实现。2.应用场景假设需要对一个data变量做 100 次“++”操作交由 2 个线程执行,结果会是什么。public class CasTest { pr..

2021-07-03 21:04:20 350

原创 JAVA线程-n线程执行m次++操作结果分析

目录1.前沿2.data++操作分析2.1 data++流程图2.2 4个步骤2.3 工作内存的含义3. 多线程分析3.1 简单场景3.2 分析4. 总结1.前沿假设变量data初始值为0对其执行m次++操作后,其结果为m。但如果是多线程对data执行m次操作其结果会是什么呢?针对这个问题。首先需要理解data++到底做了什么。2.data++操作分析2.1 data++流程图2.2 4个步骤(1)从主内存中读取data数据到工作内

2021-07-01 23:41:14 615 1

原创 Java线程-JUC包同步方法

目录1. CountDownLatch1.1 CountDownLatch介绍1.2 CountDownLatch不足1.3 代码演示2. CyclicBarrier2.1 CyclicBarrier介绍2.2 代码演示3. Semaphore3.1 Semaphore介绍3.2 代码演示1. CountDownLatch1.1 CountDownLatch介绍CountDownLatch是一个同步工具类,用于协调多个线程之间的同步问题。Count

2021-06-28 23:10:50 363

原创 Java线程-知识点归纳

1 能确保线程安全的代码写法?1.1 为什么多线程并发不安全?A:操作系统中进程拥有资源,而线程则不拥有资源。一个进程可以创建多个线程。这些线程共享进程中的资源。当多线程并发执行。对同一个数据进行修改,就可能会造成数据的不一致。线程执行的数据是由“工作内存“”获取的。而工作内存的数据来源与“主内存”。其中工作内存起到的作用类似于“缓存”。假设现在有个任务需将data=0,执行“+1”操作。开启两个线程执行。正常执行的结果data应该为2。实际data存在1 或者 2。原因线程1执行获取的d

2021-06-27 21:31:23 289

原创 Java语言调用JavaScript引擎破解加速乐

本文内容主要了解加速乐生成,通过Java语言调用JavaScript引擎模拟浏览器行为。一、前文因为学习过程中需要数据的原因接触到爬虫,在学习和实践的过程遇到了特别有趣的事。特此记录。直接开始吧!整个爬取的过程:(1)分析浏览器请求。(2)使用Postman模拟用户请求。(3)通过HttpClient编写请求头和参数发送GET、POST的请求。(4)通过Jsoup解析器...

2019-08-24 18:41:01 537

空空如也

空空如也

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

TA关注的人

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