自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaWeb~用饿汉模式、懒汉模式(高性能线程安全版)分别实现单例模式

但是我们发现上面写法将return语句也包含在原子操作里面 这样可以解决线程安全问题 但是 锁的粒度太大 将一些原本无关紧要的代码或者说本来可以并发执行的代码也变成原子操作 这样导致的粒度大就会降低这整段代码的并发执行能力降低了效率。所以我们一般认为懒汉模式比饿汉模式效率更高 但是懒汉模式也有缺点他线程不安全 这点在高性能版懒汉模式解决。//懒汉模式 懒汉模式是在用到该实例的时候才去创建一个实例 后序再去创建实例只是返回原有实例 线程不安全。所以我们对其再次进行优化。

2025-01-24 17:16:30 623

原创 iperf测试带宽的问题 -- 上下行带宽差距大_iperf测试上下行带宽差距大

从上面可以看到这种测试方法上下行带宽差距较大。这种-d 和 -r参数对结果产生了影响,那么到底是网卡的全双工有问题,还是其他配置有问题呢。请大佬指教!----------------------以下是雷哥2022年6月24日对本文的修改、补充----------------------我们来看-d和-r的作用:-d 使用双测试模式。服务端使用-L指定的端口反向连接到客户端,上行下行是同时跑数据进行测试。-r 往返测试模式。

2025-01-24 16:07:30 461

原创 ES6模块化、Promise、async、await、EventLoop、API接口案例_export function 与 await

ES6模块化规范是游览器端与服务器端通用的模块化开发规范。它的出现极大降低了前端开发者的模块化学习成本,开发者不需要额外学习AMD、CMD或CommonJS等模块化规范。ES6每个js文件都是一个独立的模块导入其他模块成员需要使用import关键字向外共享模块成员需要使用export关键字确保电脑上安装了v14.15.1或更高版本的node,因着在低版本node,他不支持使用和学习最新的ES6规范,版本低的话可以去node官网下载一下最新版本的node查看node版本node -v。

2025-01-24 09:45:51 670

原创 Camera ISP流程概述_camera awb流程

一般情况下, 在传感器中, 实际像素要比有效像素多, 如下图所示, 像素区头几行作为不感光区( 实际上, 这部分区域也做了 RGB 的 color filter) , 用于自动黑电平校正, 其平均值作为校正值, 然后在下面区域的像素都减去此矫正值, 那么就可以将黑电平矫正过来了。所以, 一般采用非线性去噪算法, 例如双边滤波器, 在采样时不仅考虑像素在空间距离上的关系, 同时加入了像素间的相似程度考虑, 因而可以保持原始图像的大体分块, 进而保持边缘。同时, 当信号经过ADC 时, 又会引入其他一些噪声。

2025-01-24 07:40:37 549

原创 Android技能树 — 数组,链表,散列表基础小结

本文主要讲 数组,链表,散列表(哈希表)。当我们去看电影的时候,我们知道电影院门口会有一个储物柜,上面还会有连续的数字,一个抽屉连着一个抽屉。然后你就会把你的东西放在相应号码的小抽屉中,然后进去看电影了。

2025-01-24 05:43:08 961

原创 Android View post 方法

说起post方法,我们很容易联想到的post方法,都是接收一个对象。那么这两个方法有啥不同呢?

2025-01-24 03:50:06 389

原创 2024年度开源新锐项目,MNN等你Pick!

([使用MNN表达式API进行训练 · 语雀]( ))目前,MNN在移动端的训练机制已经在手机淘宝中得到充分验证,可以根据每个用户隐私的训练数据,定制化全局推荐模型,明显提升个性化推荐的效果。**1. 应用场景:**MNN立足于阿里巴巴集团,支持了众多有商业价值的场景(如淘宝直播,AR导购,搜索推荐,菜鸟IOT等),有天然的业务应用的优势。其痛点主要来自于:移动端设备的算力往往不足服务端,如何在内存、算力等资源受限的情况下,极致发挥性能,让深度学习模型参与的交互场景达到实时。投票即可获得定制淘公仔!

2025-01-24 01:40:17 412

原创 Android_ 照片选择区域功能实现

/中间锚点//绘制4条边上的中点绘制4条边上的中点前,先算出当前4条边上中点的位置//中点不存在,就新建i++){//维护4个顶点的位置,//通过顶点的位置,算出边上中点的位置i<len;i++){//为了避免极端情况,//采用(坐标+距离的一半)的方式。

2025-01-20 11:20:54 656

原创 Android-第十节JSON讲解

json数据:{“grade”:“18级”,“classname”:“护理学院”,“students”:[{“id”:“001”,“age”:30,“name”:“张三”,“isstudent”:false},{“id”:“002”,“age”:25,“name”:“李四”,“isstudent”:true},{“id”:“003”,“age”:26,“name”:“王五”,“isstudent”:true}]}=null){//当temp读到的数据为空就结束。

2025-01-20 11:19:22 994

原创 5G中CRC table的生成_5g crc校验

参照38.212第5章信道编码是一种组合,这种组合包含了检错,纠错,速率匹配,交织,以及传输信道和控制信息向物理信道的映射。CRC是信道编码的重要组成部分。CRC的原理是通过多项式除法获得校验码,但是实际代码实现是通过查表法,以空间换时间。简单说,就是把输入数据除以一个给定的二进制序列,所得到的余数就是CRC码。

2025-01-20 09:53:09 928

原创 专家推荐JAVA那点破事,并发、IO模型、集合、线程池、死锁、非阻塞、AQS

线程:是比进程更小的能独立运行的基本单位,他是进程的一个实体,可以减少程序并发执行时的时间和空间开销,使得操作系统具有更好的并发性。put插入:key 计算hash值,取模,找到数组位置,如果数组中没有元素直接存入,反之,则判断key是否相同,key相同就覆盖,否则就会插入到链表的尾部。一旦获取到锁,其他的线程将会被阻塞进入阻塞队列自旋,获得锁的线程释放锁的时候将会唤醒阻塞队列中的线程,释放锁的时候则会把。,增加了标志字段,更新时不光检查值,还要检查当前的标志是否等于预期标志,全部满足条件才会更新。

2025-01-15 09:50:56 937

原创 不要在并发场景下使用hashmap的原因

【代码】不要在并发场景下使用hashmap的原因。

2025-01-15 09:43:29 154

原创 【Java基础】【进制转换&&基础练习】

代码 :/*十进制:Java中,数值默认都是10进制,不需要加任何修饰。二进制:数值前面以0b开头,b大小写都可以。八进制:数值前面以0开头。十六进制:数值前面以0x开头,x大小写都可以。注意: 书写的时候, 虽然加入了进制的标识, 但打印在控制台展示的都是十进制数据.*/System.out.println(“二进制数据0b10的十进制表示为:” + 0b10);System.out.println(“八进制数据010的十进制表示为:” + 010);

2025-01-14 19:41:47 662

原创 【Java】OpenPDF、iText、PDFBox 是三种常用的 PDF 处理库

OpenPDF 的主要优势在于它的简洁性和易用性,它提供了一些简单的 API,使开发人员可以轻松地创建和编辑 PDF 文档。同时,OpenPDF 还提供了一些高级的特性,例如表单填充、数字签名、加密等。

2025-01-14 19:34:20 630

原创 【Java】Java面试

MyISAM和InnoDB均使用B+树(平衡多路查找树)作为 索引结构:InnoDB中数据文件本身就是索引文件,叶节点的data域存储完整的数据记录,索引key即为表的主键,且通过辅助索引查找获取到主键值然后再到主索引中获取到数据记录,是一种聚集索引;**声明式:**不需要对原有的业务做任何修改,通过在XML文件中定义需要拦截方法的匹配即可完成配置,要求是,业务处理中的方法的命名要有规律,比如setXxx,xxxUpdate等等。where条件中:or、in、函数、对索引列进行运算(+,-,*,/,!

2025-01-14 19:30:38 573

原创 Python编程题每日一练day1(附答案)_python每日一练

否则将字符串转成浮点数,如果小于1.0米,则使用print()语句一行输出字符串’Your admission cost is 0 yuan.‘,如果大于等于1.0米且小于等于1.2米,则使用print()语句一行输出字符串’Your admission cost is 80 yuan.’,现请你使用split函数将这份字符串从符号处分割成众多字符列表,记录在my_list中,并使用print函数直接打印my_list中的结果。如果读取到的字符串等于’quit’,则使用 break 语句退出循环;

2025-01-13 17:06:23 429

原创 PYTHON知识点学习-函数调用中return&amp;print_有返回值函数用return语句将函数的处理结果返回给调用处,调用函数时用print()函数

在Python中,abs()是一个内置函数,用于返回一个数的绝对值。它可以应用于整数、浮点数和复数,而返回值始终是一个正数。print(abs(-5)) # 输出5print(abs(3.14)) # 输出3.14print(abs(0)) # 输出0print(abs(-2+3j)) # 输出3.605551275463989在第二个示例中,我们传递一个浮点数3.14给abs()函数,它返回3.14的绝对值。在第四个示例中,我们传递一个复数-2+3j给abs()函数,它返回该复数的模长,即。

2025-01-13 17:02:41 369

原创 python的这10道面试题,70%的会出错_python中a=1 b=flase ab&gt;-1运算结果

(5) 0.6*2 = 1.2, 整数部分为1,小数部分为0.2。2 = 0.4 , 整数部分为0,小数部分为0.4。2 = 0.8 , 整数部分为0,小数部分为0.8。2 = 0.2, 整数部分为0,小数部分为0.2。2 = 1.6, 整数部分为1,小数部分为0.6。b) 字符串不支持*操作。

2025-01-13 16:59:01 345

原创 LeetCode - 1705 - 吃苹果的最大数目 - Java - 细节~

题目的意思,我给你们大概整理了一下:一个苹果树,每天 产出 count 个苹果(有可能不产出,即 count == 0),现在的情况呢,就是我们嘴馋,看到老家有颗苹果树,几乎每天都可能产出苹果。如果没过保质期,就代表我们需要记入 今天苹果的个数和保质期(前提今天有苹果产出),而且也意味着我们今天开始可以吃一个苹果,但是这个苹果一定某天产出的苹果(该天产出苹果保质期是最短的),当我们吃完该天的苹果(前提是没过期),我们就可以将其存储的信息删除掉了。我们呢,为了不浪费,每天吃的都是过几天就可能坏的苹果。

2025-01-12 19:48:24 979

原创 Leap Day6——数据结构与算法 循环链表、双向链表、线性表的应用

在单链表中,查找直接后继结点的执行时间为O(1),而查找直接前驱的执行时间为O(n)。已知线性表La和Lb中的数据元素按值非递减有序排列,现要求将La和Lb归并为一个新的线性表Lc,且Lc中的元素仍按值非递减有序排列。(p=GetElem_DuL(L,i))) //在L中确定第i个元素的位置指针p。(p=GetElem_DuL(L,i))) //在L中确定第i个元素的位置指针p。while(pa

2025-01-12 19:44:44 897

原创 Layui常用总结50篇(VIP典藏版)

一、常用技术解决方案Layui模糊查询Layui后台时间格式数据接收Layui下拉框之select动态数据AjaxLayui下拉框之select模糊搜索查询功能Layui数据表格分页参数详解Layui列表隔行换色Layui实现二级联动及多级联动Layui文件下载Layui文件单个上传、批量上传、多条件上传Layui上传文件提示org.apache.tomcat.util.http.fileuploadLayui导入Excel数据到数据库Layui导出Excel数据Layui按钮动态展示Layui

2025-01-12 19:41:02 321

原创 java-NIO-简单聊天程序_nio发信息

【代码】java-NIO-简单聊天程序_nio发信息。

2025-01-11 21:11:40 191

原创 Java+Swing+Mysql实现停车场管理系统

String sql=“insert users(cardid,name,password,cardtype,overage,tel,carid,userstype) values(”+cardid+“,'”+name+“‘,’”+password+“‘,’”+cardtype+“',”+overage+“,”+tel+“,”+carid+“,‘普通用户’)”;ImageIcon img = new ImageIcon(“E:/java练习/carsituation_man/res/main.jpg”);

2025-01-11 21:08:00 954

原创 Java+Servlet+JSP实现Web宠物诊所管理系统

System.out.println(“插入数据失败!(╯﹏╰) 注册失败,返回重新注册。// 通过兽医专业获取兽医。// 通过兽医id获取兽医。3.医生信息的增删改查。// 通过兽医名获取兽医。// 通过兽医名获取兽医。// 通过登录名获取id。2.宠物信息的增删改查。// 通过id删除兽医。1.用户的注册与登录。

2025-01-11 21:04:18 979

原创 Go操作RabbitMQ_go调用rabbitmq

路由模式(Routing Mode)是消息队列中一种常见的消息路由模式,它允许消息的发送者(Producer)将消息发送到指定的交换机(Exchange),而交换机则根据消息的路由键(Routing Key)将消息路由到符合条件的队列(Queue)。路由模式提供了一种灵活的消息路由机制,使得消息的分发可以根据不同的路由规则进行定制。在话题模式中,消息的发送者(Producer)将消息发送到特定的主题,而消息的接收者(Consumer)则根据自己感兴趣的主题进行订阅,从而接收相关的消息。

2025-01-11 16:36:02 1269

原创 Google Play 更新一览

新的 Google Play SDK 管理中心可以让供应商报告其 SDK 版本的问题,这样我们就可以给您提供更好的指导和建议。根据开发者们的反馈,我们将很快推出一个可选用的代码透明功能,以提供额外的加密保障,确保您的应用在设备上的代码和其原始版本一致。今年晚些时候,我们将推出一个新的公共网站,提供关于热门 SDK 的重要见解,以帮助您为应用选择合适的 SDK。,并优化产品计划,我们精选了生态系统中的数据,以提供您的应用与竞品组合之间的数据对比。的 I/O 演讲,了解我们如何帮助您建立更安全、更稳定的应用。

2025-01-11 16:32:20 631

原创 Google IO 2018开发者大会:Android P

在Android P中,Adaptive Battery(自适应电池),该功能可以通过人工智能技术监控用户的电量消耗情况,减少应用程序没有必要唤醒而造成的CPU资源浪费可达30%,提供更持续性的电池处理。同时数据在本地处理,无需担心隐私。当用户把手机放在桌子上时,免打扰模式开启,届时没有震动,使用户可以免除不必要的事物,专注于自己的事情。从谷歌刚刚推出的Android P新测试版来看,其中版本号已经发生了细微的变化,其中“P”的代表的含义已经公示,原来是Android 9,而不是传统意义的“9.0”。

2025-01-11 16:28:38 340

原创 C++第十弹---类与对象(七)

虽然上述构造函数调用之后,对象中已经有了一个初始值,但是不能将其称为对对象中成员变量的初始化,,而不能称作初始化。

2025-01-11 03:47:24 785

原创 C++的缺陷和思考(一)_c++缺点

明明这里arr2和arr1同为int[5]类型,但是并不支持复制。照理说,数组应当比结构体更加适合复制场景,因为需求是很明确的,就是元素按位复制。

2025-01-11 03:43:43 948

原创 C++封装互斥锁_互斥锁 用在类中 c++

这将是开发工程师的梦魇!?C++利用了一个非常好的特性:当一个对象初始化时自动调用构造函数,当一个对象到达其作用域结尾时,自动调用析构函数。所以我们可以利用这个特性解决锁的维护问题:把锁封装在对象内部!此时,在构造函数时获得锁,在语句返回前自动调用析构函数释放锁。其实这种做法有个专有的名称,叫做RAII(Resource Acquisition Is Initialization)

2025-01-11 03:40:03 715

原创 HW中内网代理常用工具总结_netsh转发 日志

【代码】HW中内网代理常用工具总结_netsh转发 日志。

2024-12-20 20:36:57 496

原创 HTTP协议经典面试题整理及答案详解

HEAD | 从服务端获取指定信息的头部 | 否 || PUT | 向服务端发送数据并替换服务端上指定的数据 | 是 || OPTIONS | 查询针对请求URL指定的资源支持 | 否 || DELETE | 从服务端删除指定数据 | 否 || TRACE | 沿着目标资源的路径执行消息环回测试 | 否 |

2024-12-20 20:33:16 871

原创 HTTP协议原理详解

比起文本协议,二进制协议解析起来更加高效,"线上"更紧凑哦,更重要的是错误更少。

2024-12-20 20:29:35 795

原创 HTML5:Canvas 标签

isPointInPath() | 如果指定的点位于当前路径中,则返回 true,否则返回 false || strokeText(text,x,y) | 在 canvas 上绘制空心的文本 || lineTo() | 添加一个新点,然后在画布中创建从该点到最后指定点的线条 || fillText(text,x,y) | 在 canvas 上绘制实心的文本 || createPattern() | 在指定的方向上重复指定的元素 || moveTo() | 把路径移动到画布中的指定点,不创建线条 |

2024-12-20 20:25:55 570

原创 HTML5和css3新特性

last-child /* 选择元素最后一个孩子 */:first-child /* 选择元素第一个孩子 */:nth-child(1) /* 按照第几个孩子给它设置样式 */:nth-child(even) /* 按照偶数 */:nth-child(odd) /* 按照奇数 */:disabled /* 选择每个禁用的dom元素 */:checked /* 选择每个被选中的dom元素 */:not(selector) /* 选择非 selector 元素的每个元素 */

2024-12-20 20:22:14 989

原创 git切换分支时,该分支的修改被带到另一个分支_git,在本地一个分支上修改了一点点东西,切换到另外一个分支,为什么会自动合并

本章主要讲述自己遇到的一个关于git的小坑这个小坑点困扰了我一个小时的时间,不知道还会不会有人会遇上这样的问题,所以就写成博客了。其实这个坑点也不算太坑,只是我们平时可能会粗心一点,没有commit就进行了切换分支才会导致的,只要我们在心细点就好了。

2024-12-20 17:51:01 584

原创 Gitter---高颜值GitHub小程序客户端诞生记

Gitter的初衷并不是想把网页端所有功能照搬到小程序上,因为那样的体验并不会很友好,比如说,笔者自己也不想在手机上阅读代码,那将会是一件很痛苦的事。在保证用户体验的前提下,让用户用更简单的方式得到自己想要的,这是一件有趣的事。

2024-12-20 17:47:20 774

原创 Github神作!2024Java秋招高级面试指南,吃透至少阿里P6!

多线程之间通信的同步问题,synchronized锁的是对象,衍伸出和synchronized相关很多的具体问题,例如同一个类不同方法都有synchronized锁,一个对象是否可以同时访问。说出几种MQ之间的区别,以及为什么使用这种MQ,消息重复发送(幂等性),消息发送失败,消息掉包,长时间收不到消息,发送的消息太大造成接收不成功。了解什么是 redis 的雪崩、穿透和击穿?redis 内存淘汰机制(MySQL里有2000w数据,Redis中只存20w的数据,如何保证Redis中的数据都是热点数据?

2024-12-20 17:43:40 734

原创 Git 配置别名 —— 让命令变得更简单

比如我的 git 安装目录是 C:\Program Files\Git, 那么相应的文件位置是C:\Program Files\Git\mingw64\etc。之前使用 Git 版本控制工具的时候,基本都是使用图形化工具,如 SourceTree,TortoiseGit (小乌龟),对 GIt 命令也不是很熟悉。后面由于工作的原因,切换到 Ubuntu 开发,不得已使用 Git 命令,而每次在提交代码的时候,都要敲一堆 Git 命令,有时候会忘了,效率相对来说比较低。我的常用的别名的设置。

2024-12-20 17:39:59 1367

原创 Git Windows安装教程_git安装选择默认编辑器

Git 安装程序里面内置了 10 种编辑器供你挑选,比如 Atom、Notepad、Notepad++、Sublime Text、Visual Studio Code、Vim 等等,默认的是 Vim ,选择 Vim 后可以直接进行到下一步,但是 Vim 是纯命令行,操作有点难度,需要学习。启用符号链接 ,符号链接是一类特殊的文件, 其包含有一条以绝对路径或者相对路径的形式指向其它文件或者目录的引用,类似于 Windows 的快捷方式,不完全等同 类Unix(如 Linux) 下的 符号链接。

2024-12-20 17:36:17 1817

空空如也

空空如也

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

TA关注的人

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