交换排序 冒泡 和快速 的实现

手画图解,关于死锁,面试的一切都在这里了

什么是死锁(Deadlock) 死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象。若无外力作用,它们都将无法推进下去。 产生死锁的四个必要条件得烂熟于心: 互斥条件:进程要求对所分配的资源进行排他性控制,即在一段时间内某资源仅为一个进程所占用。此时若有其他进程请求该资源 ......

Docker进阶-Dockerfile建立一个自定义的镜像执行自定义进程

前言 docker对我来说是一个很方便的工具,,上一篇文章也写了docker基本的一些使用,这篇文章重点描述一下Dockerfile的使用,从零建立一个自己定制化的镜像,并可以执行我们需要的任务。 作者:良知犹存 转载授权以及围观:欢迎关注微信公众号:羽林君 或者添加作者个人微信:become_me ......
Dockerfile 进程 镜像 Docker

微服务组件-----Spring Cloud Alibaba 注册中心Nacos的CP架构Raft协议分析

前言 本篇幅是继 注册中心Nacos源码分析 的下半部分。 意义 【1】虽说大部分我们采用注册中心的时候考虑的都是AP架构,为什么呢?因为性能相对于CP架构来说更高,需要等待的时间更少【相对于CP架构,采用的是二段提交,AP架构是直接落盘数据,然后进行数据扩散,来达到最终一致,所以客户端收到响应会更 ......
架构 组件 Alibaba Spring Cloud

JavaScript冒泡排序+Vue可视化冒泡动画

冒泡排序(Bubble Sort)算是前端最简单的算法,也是最经典的排序算法了。网上JavaScript版本的冒泡排序很多,今天用Vue实现一个动态的可视化冒泡排序。 ......
JavaScript 动画 Vue

Vue快速上门(2)-模板语法

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,同他周边的生态共同构成了一个灵活的、渐进式的前端框架。 本文内容包括模板的基本语法,及各种指令的使用,最后总结了Vue动画的使用。 ......
语法 模板 Vue

Vue快速上门(3)-组件与复用

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,同他周边的生态共同构成了一个灵活的、渐进式的前端框架。 本文内容是关于组件式开发,为了复用提供的各种机制,如混入、指令、过滤器,及Vue插件开发。 ......
组件 Vue

Vue快速上门(1)-基础知识图文版

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,同他周边的生态共同构成了一个灵活的、渐进式的前端框架。 本文内容首先了解了MVVM的基本原理,然后是Vue的基本结构和选项参数、实例Api、全局API等。 ......
基础知识 图文 基础 知识 Vue

keepalived + nginx 实现高可用

keepalived + nginx 实现高可用 本篇主要介绍一下 keepalived + nginx 来实现 对于nginx的高可用, 还是简单的主备模式 1.概述 前面有了解keepalived 的主备的基本使用, 但是那种是针对宕机等情况 停止了keepalived 的进程实现的 vip的漂 ......
keepalived nginx

你不知道的Map家族中的那些冷门容器

概述 本篇文章主要讲解下Map家族中3个相对冷门的容器,分别是WeakHashMap、EnumMap、IdentityHashMap, 想必大家在平时的工作中也很少用到,或者压根不知道他们的特性以及适用场景,本篇文章就带你一探究竟。 WeakHashMap 介绍 WeakHashMap称为弱三列映射 ......
冷门 容器 家族 Map

使用C# 11的静态接口方法改进 面向约定 的设计

C# 11带来了一个我期待已久的特性——接口方法。我们知道接口是针对契约的定义,但是一直以来它只能定义一组“实例”的契约,而不能定义类型(的静态成员)的契约,因为定义在接口中的方法只能是实例方法。由于缺乏针对“类型契约”的支持,我们在设计一些框架或者类库的时候,只能采用“按照约定”的设计,比如ASP... ......
静态 接口 方法

甜点cc的2022年回顾总结

希望我会像十七八岁时那样勇敢、无畏、做自己,充满无穷的力量,想去的地方一下子就能飞的到,无限膨胀,膨胀到全世界都知道我的存在! ......
甜点 2022

JAVA中的注解可以继承吗?

前言 注解想必大家都用过,也叫元数据,是一种代码级别的注释,可以对类或者方法等元素做标记说明,比如Spring框架中的@Service,@Component等。那么今天我想问大家的是类被继承了,注解能否继承呢?可能会和大家想的不一样,感兴趣的可以往下看。 简单注解继承演示 我们不妨来验证下注解的继承 ......
注解 JAVA

深度学习炼丹-不平衡样本的处理

数据层面的处理方法总的来说分为数据扩充和数据采样法,数据扩充会直接改变数据样本的数量和丰富度,采样法的本质是使得输入到模型的训练集样本趋向于平衡,即各类样本的数目趋向于一致。 ......
样本 深度

推荐8个提高工作效率的IntelliJ插件

前言 欢迎关注微信公众号「JAVA旭阳」交流和学习 IntelliJ目前已经成为市面上最受欢迎的Java开发工具,这得益于里面非常丰富的插件机制。本文我将分享在日常开发中我经常使用的5个插件,它们可以帮助您提高工作效率。 1. GenerateAllSetter 作为开发人员,我们总是需要new() ......
插件 IntelliJ 效率

Gradle 使用maven本地仓库 带来的思考

Gradle 使用maven本地仓库 带来的思考 本篇主要探究一下 在使用Gradle 的时候一般会配置 maven 的本地仓库的,那是不是Gradle 可以直接使用 maven本地仓库的jar呢 ? 下面来探究一下 思考 当我们在使用Gradle的时候 一配置一个 mavenLocal() 代表它 ......
仓库 Gradle maven

git相关问题解析,你想要的都有🔥

我是甜点cc,git版本管理工具,只要是软件开发人员都会使用到,了解git的使用会带来事半功倍的效果,git相关问题最全解析? ......
128293 问题 git

记一次InputStream流读取不完整留下的惨痛教训

前言 首先,问问大家下面这段流读取的代码是否存在问题呢? inputStream = .... try { // 根据inputStream的长度创建字节数组 byte[] arrayOfByte = new byte[inputStream.available()]; // 调用read 读取字节 ......
InputStream 教训

8个Spring事务失效的场景,你碰到过几种?

前言 作为Java开发工程师,相信大家对Spring种事务的使用并不陌生。但是你可能只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务可能没有生效,直接在生产上暴露了,这可能就会导致比较严重的生产事故。今天,我们就简单来说下Spring事务的原理,然后总结一下spring事务失败的场景,并提 ......
场景 事务 Spring

Hadoop如何保证自己的江湖地位?Yarn功不可没

前言 任何计算任务的运行都离不开计算资源,比如CPU、内存等,那么如何对于计算资源的管理调度就成为了一个重点。大数据领域中的Hadoop之所以一家独大,深受市场的欢迎,和他们设计了一个通用的资源管理调度平台Yarn密不可分,那Yarn是如何做进行资源管理的呢?它的通用性体现在哪里呢?它是如何保证Ha ......
功不可没 地位 江湖 Hadoop Yarn

Spring中11个最常用的扩展点,你知道几个?

前言 在使用spring的过程中,我们有没有发现它的扩展能力很强呢? 由于这个优势的存在,使得spring具有很强的包容性,所以很多第三方应用或者框架可以很容易的投入到spring的怀抱中。今天我们主要来学习Spring中很常用的11个扩展点,你用过几个呢? 1. 类型转换器 如果接口中接收参数的实 ......
常用 Spring

软件设计中最关键的“开闭原则”,究竟指什么呢?

前言 软件设计原则中有一条很关键的原则是开闭原则,就是所谓的对扩展开放,对修改关闭。个人觉得这条原则是非常重要的,直接关系到你的设计是否具备良好的扩展性,但也是相对比较难以理解和掌握的,究竟怎样的代码改动才被定义为“扩展”?怎样的代码改动才被定义为“修改”?怎么才算满足或违反“开闭原则”?别急,本文 ......
原则 关键 软件

SourceGenerator 使用姿势(1):生成代理类,实现简单的AOP

SourceGenerator 已经出来很久了,也一直在关注。之前观摩大佬 xljiulang 的 WebApiClient 使用 SourceGenerator 生成接口代理类,深受启发,准备拿过来用看看(发出白嫖的声音),写个编译期静态代理AOP。本篇重点是怎么获取元数据,得到想要的数据,生成想 ......
SourceGenerator 姿势 AOP

STM32与PS2的无线通信和相关函数介绍

PS2采用SPI通信协议 源码和参考文件获取:https://github.com/Sound-Sleep/PS2_Based_On_STM32 接收器接口 DI:手柄->主机,时钟的下降沿传送信号,信号的读取在时钟由髙到低的变化过程中完成 DO:主机->手柄,同步传送于时钟的下降沿 空端口 GND ......
无线通信 函数 无线 STM PS2

.NET 云原生架构师训练营(基于 OP Storming 和 Actor 的大型分布式架构一)--学习笔记

目录 为什么我们用 Orleans Dapr VS Orleans Actor 模型 Orleans 的核心概念 为什么我们用 Orleans 分布式系统开发、测试的难度(服务发现、通信) 运维的复杂度(伸缩性与可靠性的保障) actor 拥有全局唯一身份 自动伸缩功能 Dapr VS Orlean ......
架构 分布式 Storming 笔记 Actor

ConditionAlOnProperties实现可插拔?

大家好,我是3y,一年CRUD经验用十年的markdown程序员👨🏻‍💻常年被誉为职业八股文选手 我又又又又被吐槽了,随之而来,我的消息推送平台开源项目Austin又又又又更新啦,迭代自己的项目多是一件美事啊。 源码Gitee链接:gitee.com/austin 01、可插拔 我的项目逐渐成 ......
ConditionAlOnProperties

SpringBoot中搭配AOP实现自定义注解

1 springBoot的依赖 确定项目中包含可以注解的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> ......
注解 SpringBoot AOP

1分钟理清楚C++类模板和模板类区别

1、定义区别 类模板和模板类主要关注点是后一个单词。 类模板:主要描述的是模板,这个模板是类的模板。可以理解为一个通用的类,这个类中的数据成员,成员函数的形参类型以及成员函数的返回值类型不用具体的指定,这些类型都是虚拟的。在使用类模板进行对象定义的时候,才会根据对象的实际参数类型来替代类模板中的虚拟 ......
模板

解决RockyLinux和Centos Stream 9中firefox无法播放HTML视频问题

如题在测试两种centos后续系统时,发现firefox无法播放HTML视频问题。经过一番折腾找到了解决的办法,具体解决如下: 首先下载VLC $sudo yum install vlc 而后重启浏览器就可以使用firefox播放HTML视频了。 在下载vlc时会因为仓库问题出错, 对于Rocky, ......
RockyLinux firefox Centos Stream 问题

Vue 响应式原理模拟以及最小版本的 Vue的模拟

在模拟最小的vue之前,先复习一下,发布订阅模式和观察者模式 对两种模式有了了解之后,对Vue2.0和Vue3.0的数据响应式核心原理 1.Vue2.0和Vue3.0的数据响应式核心原理 (1). Vue2.0是采用Object.defineProperty的方式,对数据进行get,set方法设置的 ......
Vue 原理 版本

说说真实Java项目的开发流程,以及面试前的项目准备说辞

介绍项目是必不可少的Java面试环节,求职者需要借此证明自己真实Java项目的经验,如果再做的好的话,需要借此展开自己的亮点说辞。 不过之前如果只有学习项目经验,比如是自己跑通一个项目,或者是在培训班里通过一个Spring Boot项目入门Java,那么这些学习项目的开发流程其实和公司里真实Java ......
项目 说辞 流程 Java