线程lesson java 03

Java集合框架

# Java集合框架 ## 集合框架 用于存储数据的容器,集合框架是为表示和操作集合而规定的一种统一的标准的体系结构 任何集合框架都包含三大块内容: 对外的接口、接口的实现和对集合运算的算法 ## 接口 表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。在面向对象编程 ......
框架 Java

c++多线程同步

# 死锁问题1 单核实时可抢占的系统中,优先级不同的三个线程A/B/C, A>B>C * 当C先获得时间片开始执行,并获得锁 * A因为高优先级,被唤醒并中断C,但没有得到锁,而阻塞 * B获得执行机会,由于优先级高于C,B会一直执行,让AC系统无法取得任何进展 ```cpp std::stack ......
线程

java安装失败错误代码

java安装错误 安装路径不是默认的安装路径,并且安装路径有中文。电脑是32位系统,但是安装的jdk64位的。安装过程中内存不足,程序本身有缺陷。 点击Windows键+ R打开运行程序。在运行框中键入控制面板。在出现的窗口中找到Java并将其打开。在Java控制面板中打开安全选项卡。删除浏览器中启 ......
错误 代码 java

java-多线程并发,CompletableFuture

//无返回值 @Override public void execCreateYmDetDataSubTask(YmDetCreateWorkerDto ymDetCreateWorkerDto){ List<Long> sendIdList = ymDetCreateWorkerDto.getSe ......
CompletableFuture 线程 java

请求与线程

在标准的Java Web应用程序中,每个请求通常都会由一个单独的线程来处理,而且这个线程是与请求一一对应的,也就是说每个请求都有一个对应的线程。 当客户端发送一个HTTP请求到服务器时,服务器会为该请求创建一个新的线程来处理该请求。这个线程负责接收请求、处理请求、执行相应的业务逻辑,并生成响应。在请 ......
线程

Java常用类

#Java常用类 ## Object类 getClass() 获取类 notify() 和 wait() 唤起进程和阻塞进程 equals() 判定两个对象是否相等,注意子类需要重写判定方法,因为原方法比较的是引用,肯定不相等 ## Math类 常见方法 abs 绝对值 pow 求幂 ceil 向上 ......
常用 Java

java时间天数差

时间天数差 private int diffInDays(Date star, Date endDay) { Date nextDay = star; int diffInDays = 1; while(nextDay.before(endDay)){//当明天不在结束时间之前是终止循环 Calen ......
天数 时间 java

Gradle 运行Java Main 类

### 文章来源 翻译自 [Run a Java main Method Using Gradle](https://www.baeldung.com/gradle-run-java-main),尊重原创 [可复制地址](https://www.cnblogs.com/wei2cai/article ......
Gradle Java Main

Java 获取当前天是一年中的第几天

Java 获取当前天是一年中的第几天 ```java @Test void dayofweed() throws Exception { System.out.println("2023-01-01 第 " + getWeekYearISO("2023-01-01")); System.out.pr ......
Java

Java面试题 P28:数据库篇:MySql篇-MySql优化-索引-什么是索引?索引

什么是索引:索引(index)是帮助MySql高效获取数据的数据结构(有序)。在数据之外,数据库还维护着满足特定查找算法的数据结构(B+树),这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。 ......
索引 MySql 数据库 数据 Java

Java面试题 P25:Redis篇:redis是单线程的,但是为什么还那么快?

一、Redis是单线程的,但是为什么还那么快 1、Redis是纯内存操作,执行速度非常快 2、采用单线程,避免不必要的上下文切换可竞争条件,多线程还要考虑线程安全问题,加入并发锁,影响性能 3、使用I/O多路复用模型,非阻塞IO 二、你能解释一下I/O多路复用模型? ......
线程 Redis redis Java P25

Java面试题 P24:Redis篇:redis集群有哪些方案?

在Redis中提供的集群方案总共有三种: (1)主从模式 (2)哨兵模式 (3)分片集群 redis主从数据同步的流程时什么? ......
集群 方案 Redis redis Java

Java面试题 P23:Redis篇:redis分布式锁,是如何实现的?

单台服务器:加synchronlzed解决方案。 (1)采用Watch dag 给锁续期 (2)抢不到锁的线程会尝试等待 (3)所有的redis命令采用lua脚本,保证执行的原子性 ......
分布式 Redis redis Java P23

注意!JAVA中的值传递

前言:今天在解决一个问题时,程序总是不能输出正确值,分析逻辑思路没问题后,发现原来是由于函数传递导致了这个情况。 LeetCode 113 问题:给你二叉树的根节点root和一个整数目标和targetSum,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 示例 输入:root = [5 ......
JAVA

多线程

# 多线程 ## 线程简介 任务,进程,线程,多线程 ``` bash 在操作系统中运行的程序就是进程,比如QQ,播放器,游戏,IDE等等。。。 一个进程可以有多个线程,如视频中同时听声音,看图像,看弹幕,等等 ``` **Process**(**进程**)与**Thread**(**线程**) - ......
线程

Java面试题 P20:Redis篇:Redis做为缓存,数据的持久化是怎么做的?

Redis做为缓存,数据的持久化是怎么做的? 在Redis中提供了两种数据持久化的方式:1、RDB 2、AOF ......
Redis 缓存 数据 Java P20

Java面试题 P19:Redis篇:Redis做为缓存,mysql的数据如何与redis进行同步呢(双写一致)

双写一致性:当修改了数据库的数据也要同时更新缓存的数据,缓存和数据库的数据要保持一致。 共享锁:读锁代码 排他锁,写数据。读锁和写锁的值要一致。 MQ异步消息通知: ......
Redis 缓存 数据 mysql redis

Java面试题 P18:Redis篇:Redis使用场景-缓存-缓存雪崩

缓存雪崩:是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量的请求到达数据库,带来巨大压力。 ......
缓存 雪崩 Redis 场景 Java

boost asio多线程模式-IOThreadPool

今天给大家介绍asio多线程模式的第二种,之前我们介绍了IOServicePool的方式,一个IOServicePool开启n个线程和n个iocontext,每个线程内独立运行iocontext, 各个iocontext监听各自绑定的socket是否就绪,如果就绪就在各自线程里触发回调函数。为避免线 ......
线程 IOThreadPool 模式 boost asio

深入理解Java虚拟机(JVM):原理、结构与性能优化

1. 介绍 Java虚拟机(JVM)是Java程序的核心执行引擎,负责将Java源代码编译成可执行的字节码,并在运行时负责解释执行字节码或将其编译成本地机器代码。本文将深入探讨JVM的原理、结构以及性能优化的相关技术。 2. JVM原理与结构 2.1 JVM运行时数据区域 JVM运行时数据区域由以下 ......
原理 性能 结构 Java JVM

boost asio多线程模型-IOServicePool

前面的设计,我们对asio的使用都是单线程模式,为了提升网络io并发处理的效率,这一次我们设计多线程模式下asio的使用方式。总体来说asio有两个多线程模型,第一个是启动多个线程,每个线程管理一个iocontext。第二种是只启动一个iocontext,被多个线程共享,后面的文章会对比两个模式的区 ......
线程 IOServicePool 模型 boost asio

Java基础1

# 基础概念 ## Java特点 - 面向对象:**继承**,**封装**(把数据和操作数据的方法捆绑在一起,比如`setName`和`getName`),**多态**(多态是指一个引用变量到底会调用哪个类的方法,由具体的类型决定。一个变量如果声明为父类的类型,但实际引用的是子类的对象,那么该变量可 ......
基础 Java

Java基础2

# 面向对象基础 - 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。 - 面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。 ## 对象实体与对象引用 new 运算符,new 创建对象实例(对象实例在 内存中),对象引用指向对象实例(对象引用存放在栈内存中)。 ### ......
基础 Java

Java修饰符与继承

一、class(类) 1. 可以继承类(仅限一个) 1. 继承普通类:不一定要重写父类的所有方法 2. 继承抽象类:必须重写父类的所有抽象方法,除非将自己定义为抽象类 3. 只可继承父类【public、protected】的字段、方法(privated不可继承) 1. 包含父类的构造方法 2. 子类 ......
Java

Java 生态需要新鲜的血液、需要狂飙的刺激。Solon v2.4.1 发布

Java 新的生态型应用开发框架:更快、更小、更简单。 启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10;同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image。 ......
狂飙 血液 生态 Solon Java

学习Java的第10天

变量 变量是什么:就是可以变化的量! Java是一种强类型语言,每一个变量都必须声明其类型。 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。 type varName[=value] [{,varName[=value]}];//数据类型 变量名=值;; 可以使用逗号隔开 ......
Java