自定义博客皮肤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 121

原创 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 416

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

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

2021-06-28 23:10:50 105

原创 Java线程-知识点归纳

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

2021-06-27 21:31:23 112

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

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

2019-08-24 18:41:01 377

空空如也

空空如也

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

TA关注的人

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