自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

偶阵雨的博客

记录心得,积累经验

  • 博客(55)
  • 资源 (4)
  • 收藏
  • 关注

转载 时间复杂度

本篇从如下六点进行分析:究竟什么是时间复杂度什么是大O不同数据规模的差异复杂表达式的化简O(logn)中的log是以什么为底?举一个例子这可能是你见过对时间复杂度分析最通透的一篇文章。究竟什么是时间复杂度时间复杂度是一个函数,它定性描述该算法的运行时间。我们在软件开发中,时间复杂度就是用来方便开发者估算出程序运行的答题时间。那么该如何估计程序运行时间呢,通常会估算算法的操作单元数量来代表程序消耗的时间,这里默认CPU的每个单元运行消耗的时间都是相同的。假设算法的问题规模为n,那么操作

2021-11-18 15:30:11 524

原创 主板电流声解决方法

主板是华擎z390的itx主板在浏览网页,拖动鼠标等cpu低负载状态下主板发出滋滋的电流声,声音不大但有点烦排除过程开始以为是显卡电流声,原因是这块1070显卡在高负载时有啸叫烦不胜烦后仔细听了一阵,确认时主板电流声在搜索一番后,尝试关闭cpu节能模式后,电流声彻底消失具体做法进入bios调节界面中找到advance后找到cpu设置,C-STATE选择disable...

2021-11-17 15:39:02 13046 2

转载 top命令

Linux top 命令用于实时显示 process 的动态。使用权限:所有使用者。语法top [选项]选项:-d 秒数:指定 top 命令每隔几秒更新。默认是 3 秒;-b:使用批处理模式输出。一般和”-n” 选项合用,用于把 top 命令重定向到文件中;-n 次数:指定 top 命令执行的次数。一般和”-“选项合用;-p 进程 PID:仅查看指定 ID 的进程;-s:使 top 命令在安全模式中运行,避免在交互模式中出现错误;-u 用户名:只监听某个用户的进程;-q : 没有任何

2021-11-17 11:35:38 427

转载 linux文件目录

在 Linux 或 Unix 操作系统中,所有的文件和目录都被组织成以一个根节点开始的倒置的树状结构。树状目录结构如图:文件系统的最顶层是由根目录开始的,系统使用 / 来表示根目录。在根目录之下的既可以是目录,也可以是文件,而每一个目录中又可以包含子目录文件。如此反复就可以构成一个庞大的文件系统。在Linux文件系统中有两个特殊的目录,一个用户所在的工作目录,也叫当前目录,可以使用一个点 . 来表示;另一个是当前目录的上一级目录,也叫父目录,可以使用两个点 .. 来表示。. :代表当前的目录,也可

2021-11-16 12:27:05 162

原创 js执行拼接变量的方法字符串

nodejs中有个需求:var result = 某方法返回的字符串;//1.获得result//2.根据result去获取环境变量:“process.env.”+${result}如何执行这个拼接的命令呢?//注意:与 eval 不同的是,Function 创建的函数只能在全局作用域中运行。var envResult= (new Function(‘return process.env.’+result))();获取环境变量envResult那么为什么 jQuery 要用new Funct

2021-11-04 22:21:49 1057

原创 openwrt安装docker并启动

在软件包中下载docker和dockerd也可以自行下载ipk文件安装安装成功后启动xshell连上openwrtcd /etc/init.ddockerd启动后docker ps等命令就可以正常执行否则会报错(deamon没有运行的错误)一下是拉取青龙面板镜像并创建容器的命令 docker run -dit \> -v /mnt/mmcblk2p4/ql/config:/ql/config \> -v /mnt/mmcblk2p4/ql/log:/ql/log \&g

2021-10-26 00:16:09 35578 2

原创 批量修改文件名——删除前缀

通过mv操作批量删除文件前缀for file in `ls *.js`#注意是反向单引号domv $file ${$file#profix}done例如JDHelloWorld_jd_scripts_tencentscf.jsJDHelloWorld_jd_scripts_sendNotify.jsJDHelloWorld_jd_scripts_jd_update.js三个文件需要去掉相同的前缀 “JDHelloWorld_jd_scripts_”那么需要做的就是for file

2021-10-25 23:50:40 1317

原创 为什么TCP建立连接需要三次握手

TCP中的连接是什么用于保证可靠性和流控制机制的信息,包括Socket、窗口大小、序列号TCP三次握手的目的1.阻止重复连接初始化(核心目的)2.初始序列号1.核心目的是阻止重复历史连接初始化由于网络阻塞等,历史建立连接的消息(SYN)发送到接收方。此时接收方返回给发送方一个SYN+ACK消息,包含了序列号和发送方连接消息seq+1,表明接收方需要接收的起始序列号,发送方收到后发现接收方需要的起始序列号已经过期,那么发送方会发送一个RST消息给接收方表示不要建立连接。使用三次握手和RST

2021-09-16 11:29:26 373 1

原创 Microsoft Store转圈圈

Microsoft Store转圈圈先去“应用和程序”重置应用商店 选中应用商店点击高级,选择重置如果第一种方法不管用,尝试第二种思路 1.是否登录微软账号,先登录一下 2.是否关闭win10更新功能(我就是这个原因导致应用商店打不开)...

2021-07-24 15:02:55 4288 3

转载 select、poll、epoll 对比

既然 select/poll/epoll 都是 I/O 多路复用的具体的实现,之所以现在同时存在,其实他们也是不同历史时期的产物select 出现是 1984 年在 BSD 里面实现的 14 年之后也就是 1997 年才实现了 poll,其实拖那么久也不是效率问题, 而是那个时代的硬件实在太弱,一台服务器处理1千多个链接简直就是神一样的存在了,select 很长段时间已经满足需求 2002, 大神 Davide Libenzi 实现了 epoll一、API 对比1.1 select..

2020-06-02 00:28:33 331 1

原创 linux 内核空间与用户空间

为了对内存中的存储单元进行识别,内存中的每一个存储单元都必须有一个确切的地址。而一台计算机的处理器能访问多大的内存空间就取决于处理器的程序计数器,该计数器的字长越长,能访问的空间就越大。例如:对于程序计数器位数为32位的处理器来说,他的地址发生器所能发出的地址数目为2^32=4G个,于是这个处理器所能访问的最大内存空间就是4G。在计算机技术中,这个值就叫做处理器的寻址空间或寻址能力。对 32 位操作系统而言,它的寻址空间(虚拟地址空间,或叫线性地址空间)为 4G(2的32次方)。也就是说一个进程.

2020-06-01 23:47:43 224

转载 Linux下32位和64位操作系统的区别

一.我们所谓的32位、64位指的是CPU的GPRs(General-Purpose Registers,通用寄存器)的数据宽度。64位的cpu较之32位可以进行更大范围的整数运算;可以支持更大的内存。不能因为数字上的变化,而简单的认为64bit处理器的性能是32bit处理器性能的两倍。实际上在32bit应用下,32bit处理器的性能甚至会更强,即使是64bit处理器,目前情况下也是在32bit应用下性能更强。二.32位和64位操作系统是指:CPU一次处理数据的能力是32位还是64位。现在市场上的C.

2020-05-30 22:43:02 1911

转载 对Java assert的理解

断言(Assertion)是一种调试程序的方式。在Java中,使用assert关键字来实现断言。断言是一种调试方式,断言失败会抛出AssertionError,只能在开发和测试阶段启用断言;对可恢复的错误不能使用断言,而应该抛出异常;断言很少被使用,更好的方法是编写单元测试。我们先看一个例子:public static void main(String[] args) { double x = Math.abs(-123.45); assert x >= 0.

2020-05-30 21:48:46 387

原创 netty 学习笔记(二)

JDK所提供的Future 只能通过手工方式检查结果,而这个操作会阻塞;Netty对ChannnelFuture进行了增强,通过ChannnelFutureListener以回调的方式来获取执行结果,去除了手工检查阻塞的操作,值得注意的是:ChannelFutureListener的operationComplete方法是有IO线程执行的,因此注意不要再次执行耗时操作,可以通过另外线程或线程池来执行...

2020-05-30 02:04:45 489

原创 模板模式

在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板方法写在接口中,没有具体实现,只是定义接口方法执行步骤public abstract class Game { abstract void initi.

2020-05-28 01:22:53 143

原创 适配器模式

1. 介绍1.1 定义适配器模式,即定义一个包装类,用于包装不兼容接口的对象包装类 = 适配器Adapter;被包装对象 = 适配者Adaptee = 被适配的类1.2 主要作用把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法一起工作的两个类能够在一起工作。适配器模式的形式分为:类的适配器模式和对象的适配器模式1.3 解决的问题原本由于接口不兼容而不能一起工作的那些类可以在一起工作。2. 模式原理2.1 类的适配器模式类的适配器模式是把适配的类的AP

2020-05-28 00:37:59 112

原创 观察者模式

观察者模式当一个对象状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态提供关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持状态同步被观察者【主题】(subject)具体被观察者(concrete subject)观察者(observer)具体被观察者(concrete observer)观察者模式,是一种一对多的关系,即多个观察者监听一个主题。/** * 主题的接口 定义标准的方法 */public interface Subjec.

2020-05-27 23:34:52 114

原创 netty 学习笔记(一)

事件循环组【实际是一个死循环】bossGroup:负责处理连接workerGroup:负责具体工作ServerBootstrap:服务引导启动器,NIO的辅助工具handler方法是为bossGroup提供的处理方式childHandler方法是为workGroup提供的处理方式ChannelFuture异步操作执行完,没有等待执行完成再返回,直接返回的Future。public class TestServer { public static void .

2020-05-27 16:37:58 186

原创 Java 中NIO与IO对比

节点流:从特定的地方读写的流类,例如:磁盘或者一块内存区域过滤流:使用节点流作为输入或输出,过滤流是使用一个已经存在输入流或输出流进行创建的装饰模式(Decorator) 抽象构件角色(component):【inputStream】给出一个抽象接口,以规范准备接受附加责任的对象 具体构件角色(concrete component):【fileInputStream】定义一个将要接收附加责任的类 装饰角色(decorator):【fi...

2020-05-22 23:38:20 311

转载 chrome 的Software Reporter Tool.exe占用cpu

早上开机,chrome占用cpu导致风扇狂转,发现是Software Reporter Tool.exe,解决方法:C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\SwReporter\36.184.200 (用%localappdata%\Google\Chrome\User Data\SwReporter 也能快速找到...

2020-04-16 17:59:41 437

转载 "ntoskrnl.exe"占用大量cpu解决方法

ntoskrnl.exe计划任务里面结束关于空闲时段内存自检的任务

2020-04-13 19:49:14 16141

原创 实现上下移动鼠标进入扩展第二个屏幕

一个小技巧因为我是笔记本,扩展的第二个屏幕在笔记本的上面,每次操作第二屏幕鼠标都有从左边移动过去,实在麻烦,默认就这样的,我的要求就是鼠标上下进入第二屏幕,只需要将2拖到1的上面,点击应用即可。...

2020-04-12 22:31:14 3682

原创 java 成员变量与属性的区别

类的成员变量:定义在方法外可以被类方法访问的是成员变量。按照java的编码规范,成员变量一般被定义成private权限。类的属性:类的成员变量中,外界可以通过set方法和get方法对成员变量进行操作,那么这个成员变量就是类的属性。...

2020-04-05 13:29:37 333

转载 线程生命周期

知乎的图原文地址线程的状态使用一个枚举类型来描述的。这个枚举一共有6个值:NEW(新建)、RUNNABLE(运行)、BLOCKED(锁池)、TIMED_WAITING(定时等待)、WAITING(等待)、TERMINATED(终止、结束)。BLOCKED(锁池) 也就是我们平时说的阻塞,阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行。直...

2020-03-28 22:55:40 100

转载 java只有值传递?

以下这段参考了一下bilibili网友【电饭锅水蜜桃】的视频评论我的理解是很多人认为这里的值传递中,“值”包括:实际值,引用地址值。这句话打个比方就是说: 我介绍了粳米,籼米,两种大米,然后说我中午只吃米饭,不吃籼米。这时候“米饭”的范围变大了!!!这样很容易让人混淆,值传递与引用传递的效果是不一样的,把引用地址归为"值",然后这说个“值”是地址,能改变对象的真实值。自己给自己下套,《ja...

2020-03-27 16:29:12 99

原创 多个不同尺寸图片列表展示

在img标签中增加样式:object-fit: cover;<img :src="url" style="object-fit: cover;width:200px;height: 200px;/>展示的图片尺寸均为img标签设置的宽高图片尺寸过大则仅展示整个图片的一部分但在列表中看起来比较规整,可设置点击事件,点击看原图【图片整体】...

2019-11-05 15:19:16 558

原创 wangEdit 复制word到富文本框

word自带非常多的有样式代码,自己测试10几页的word复制到富文本框有500多kwangEdit可以用如下代码对复制来的内容进行过滤过滤后有不到100k的内容,也可以自己的定义过滤方法 //粘贴来的内容过滤图片 this.editor.customConfig.pasteIgnoreImg = true // 关闭粘贴样...

2019-11-05 15:11:02 916

原创 idea开启Run DashBoard

开启后样式:设置打开Run Dashboard方法:View -> Tool Windows -> Run Dashboard如果上述的选项里没有Run Dashboard,可以在工程目录下找.idea文件夹下的workspace.xml,在其中增加如下组件 <component name="RunDashboard"> <...

2019-10-15 10:14:41 101

转载 前端图片压缩上传

此demo为大于1M对图片进行压缩上传若小于1M则原图上传,可以根据自己实际需求更改。demo源码如下:<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>XMLHttpRequest上传文件</title> <sc...

2019-10-14 17:19:59 100

原创 vue+elementUI 分页多选弹窗回显,编辑回显

实现分页多选弹窗回显功能父级页面以可关闭tag标签形式展示已选1.编写分页多选弹窗组件<template> <el-dialog title="关联问题" :close-on-press-escape="false" :close-on-click-modal="false" :show-close="false" ...

2019-09-27 18:31:55 1836

原创 vue 项目采用wangedit富文本编辑器始末,重点在图片上传

官网文档很详细,建议先看文档了解一番。我在使用过程中主要遇到上传图片和调整编辑器高度的问题安装:npm install wangeditor编写组件以便日后复用,将wangedit封装为独立组件:<template> <div id="wangeditor"> <div ref="editorElem" style="text-...

2019-09-27 17:31:14 974

原创 圆形头像显示的CSS,不管原图是比例什么样,一律控制为圆形

控制div为圆形,内部图片填充这个div即可<div class="outSideDiv"> <img class="imgClass" :src="Url"/></div> .outSideDiv{ margin: auto; width: 50%; padding-top...

2019-09-27 16:43:53 590

原创 MybatisPlus中,同一个方法里切换数据源

@DataSource("userDataSource")方法最上面有这个注解,那么我在方法中默认使用配置好的userDataSource这个数据源在方法中需要用其他数据源怎么办? DynamicDataSourceHolder.setDataSource("contentDataSource");要用其他数据源则用上面的方法切换,之后就默认用切换之后的数据源了...

2019-07-10 16:50:03 3097 2

转载 idea提高效率常用插件

常用插件:下面的所有插件都使用上面外部引用方式集成相应的插件包即可1. FindBugs-IDEA作用:检测代码中可能的bug及不规范的位置,写完代码后检测下 避免低级bug。静态分析工具承诺无需开发人员费劲就能找出代码中已有的缺陷。当然,如果有多年的编写经验,就会知道这些承诺并不是一定能兑现。成功标志:重启idea后如果插件加载成功左下角出现:findbugs-...

2019-07-03 10:05:23 243

转载 String.format()的详细用法

问题在开发的时候一段字符串的中间某一部分是需要可变的 比如一个Textview需要显示”XXX用户来自 上海 年龄 21 性别 男”其中的 XXX 是用户名 每个用户也是不一样的地区 上海 为可变的string数据年龄 21 为可变的int数据性别 男 为可变的string数据遇到这种情况你们是怎么样解决的呢?把这段字符串保存在常量类里吗?不!我们应该遵循Google的开发...

2019-06-03 11:40:05 492

原创 git学习笔记(一)

 1.svn记录的是每一次版本变动的内容2.git则是将每个版本独立保存。所以git的分支管理是王牌(后续详解)3.普通程序员吧很多时间放在写代码和调BUG上,优秀的程序员将更多精力放在设计上4.三棵树:工作区,暂存区,和git仓库。5.git工作流程:    1.git工作流程一般是:        1.在工作目录中添加,修改文件        2.将需要进行版本管理的...

2018-12-03 18:00:58 124

原创 Plugin 'XXX' is incompatible with this installation

翻译成中文:插件“XXX”与此安装不兼容说明插件与jetbrains的软件版本不兼容首先应该查看软件版本,已idea为例:https://img-blog.csdn.net/20180518163729613 https://img-blog.csdn.net/2018051816373076http://plugins.jetbrains.com/idea...

2018-05-18 16:38:27 55326 8

原创 WIN7系统被占用端口的查看与关闭

打开命令提示符窗口输入 netstat -aon|findstr "被占用端口号",找到对应的PID,输入tasklist|findstr "PID",这样就找到了哪个程序在占用此端口。在任务管理器中搜索关闭即可...

2018-05-07 10:44:37 1093

原创 解决 jupyter notebook 回车换两行

最近安装了丘比特笔记本(jupyter notebook),各种快捷键和编辑模式用的非常舒服。但是我的默认浏览器是chrome每次回车换行都会空出两行,很是不方便。没有找到问题出在哪里,偶然百度到有人说可能是浏览器插件的锅。关闭所有插件后,重启jupyter notebook后果然解决了,经过排查发现是Tampermonkey中的网页限制解除脚本导致。如遇到此类问题,请关闭浏览器插件后重新试一下。...

2018-04-26 10:47:35 9221 7

转载 linux下如何将pycharm添加到系统的“应用程序”菜单里 (pycharm已成功安装)

方法1:Pycharm第一运行的时候,会问你要不要建立快捷方式当然要建立,建立完之后,发现搜索不到?用鼠标点文件系统进入/usr/share/applications看看,有没有PyCharm Community Edition的图标,如果有图标就好办了打开终端,cd /usr/share/applications然后 ls -al (详细列下当前目录下的所有项目的详细信息)你应该会发现Pych...

2018-04-25 16:10:12 5790

sbt-0.13.8 for windows

官网找不到此版本,好了很久终于找到了,分享给大家。

2018-10-16

松拓 Moveslink2免装版(亲测可用)

解压后打开文件夹Application Files\Moveslink2_1_3_31_14,双击Moveslink2.exe即可使用

2017-06-08

响应式架构 消息模式Actor实现与Scala.Akka应用集成 ,沃恩·弗农

响应式架构 消息模式Actor实现与Scala.Akka应用集成 ,沃恩·弗农

2017-02-09

Scala编程(中文完整版)

Scala编程

2017-02-09

空空如也

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

TA关注的人

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