自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 线程不安全的五个原因

前言多线程比起多进程更轻量,可以更高校的完成并发编程。多线程是访问同一个资源的,但是是抢占式执行的过程,而执行的先后由操作系统的调度器决定。当多个线程对同一个资源值进行读的时候,不会有线程安全问题,而进行写的时候,会出现线程安全问题。线程操作过程中出现不安全性的原因,操作过程可以分为三步:1.首先,把内存的数据读取到CPU寄存器中;2.其次对寄存器中的内容进行指令操作比如ADD等,将操作结果继续放在寄存器中(但是由于线程抢占式执行的特性,可能指令操作过程中,就被调度出CPU,继续由第二个线程执行);3.

2021-08-17 18:03:02 2255

原创 多线程(1)

进程和线程简介进程:运行一个程序,操作系统创建一个对应的进程。进程要管理资源,创建进程需要申请资源,销毁进程需要释放资源。线程:轻量级进程,同一个进程的线程之间共享内存资源。关系和区别进程包含线程进程之间相互隔离同一个进程的线程之间,可以共享资源,大多数是内存资源;会互相干扰进程是系统资源分配和管理的最小单位,线程是调度执行的最小单位线程创建线程创建一个子类,继承自Thread类重写run方法(线程具体要执行的方法,每个线程是一个执行流)创建子类实例调用start方法

2021-08-14 23:51:01 81

原创 Selenium运行时cannot find Chrome binary错误

Selenium运行时cannot find Chrome binary错误这种情况一般是浏览器对应的驱动没有再默认路径下找到浏览器的二进制文件。把浏览器安装在默认路径下的解决办法:我自己安装的谷歌浏览器的默认路径是C盘的Program Files目录下。而WebDrvier默认在C:\Users\m\AppData\Local\Google路径下。谷歌浏览器在安装时不能自定义路径,使用创建路径连接mklink,被访问拒绝。!!!划重点——>给Program Files中的Chrome.e

2021-08-08 01:42:07 2731

原创 TCP的10个机制

TCP的10个机制确认应答机制超时重传连接管理TCP建立连接(三次握手)TCP断开连接(四次挥手)滑动窗口流量控制拥塞控制延迟应答捎带应答面向字节流TCP对于异常情况的处理确认应答机制确认应答机制是保证TCP可靠性的核心机制;确认序号在TCP中表示接下来想要的下一条数据编号,而不是当前收到的数据编号;发送方收到应答数据的时候,应答报文中的确认序号为1001,此时发送方就知道1-1000的数据已经顺利抵达,接下来要发送的数据是从1001开始;应答报文中ACK这一位为1,说明当前确认序号是有效的。超

2021-08-03 19:50:25 429

原创 树根(编程题解)

题目数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根;如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24 来说,把2 和4 相加得到6,由于6 是一位数,因此6 是24 的数根。再比如39,把3 和9 加起来得到12,由于12 不是一位数,因此还得把1 和2 加起来,最后得到3,这是一个一位数,因此3 是39 的数根。现在给你一个正整数,输出它的数根。题解思路接收字符串,然后求和对大于..

2021-07-24 20:52:32 405

原创 星际密码(编程题解)

题目他们的密码是一串整数,通过一张表里的信息映射成最终4位密码。表的规则是:n对应的值是矩阵X的n次方的左上角,如果这个数不足4位则用0填充,如果大于4位的则只输出最后4位。题解思路是一个变式的斐波那契数列初始化斐波那契数列,每一次获取对应数据,打印最后四位代码思路new一个数组——int[] nums = new int[10001];( 注:10001防止越界初始化斐波那契数列——nums[1] = 1;nums[2] = 2;循环读取矩阵中的数字——for(in..

2021-07-24 20:39:55 300

原创 快到碗里来(编程题题解)

题目:小喵们很喜欢把自己装进容器里的(例如碗),但是要是碗的周长比喵的身长还短,它们就进不去了。现在告诉你它们的身长,和碗的半径,请判断一下能否到碗里去。题解new scanner写入数据——Scanner sc = new Scanner(System.in);使数据循环输入——while(sc.hasNext()){}输入值,即半径和身长——BigDecimal n = sc.nextBigDecimal();BigDecimal r = sc.nextBigDecimal.

2021-07-24 19:49:23 142

原创 变态跳台阶解题思路

变态跳台阶题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶(n为正整数)总共有多少种跳法。题解:第一次跳1阶,剩n-1,跳法f(n-1)第一次跳2阶,剩n-2,跳法f(n-2)第一次跳3阶,剩n-3,跳法f(n-3)第一次跳n-1阶,剩1,跳法是f(1)第一次跳n阶,剩0,跳法是1将所有跳法相加,得到2的n-1次方种跳法所以每次将n的值左移一位,所得的值即为总的跳法数目;...

2021-07-24 18:59:06 56

原创 常见Linux命令

创建用户su [用户名]——新建用户useradd [用户名]——新建用户passwd [用户名]——设置密码文件&命令ls ——查看指定目录下有哪些文件或者目录ls -l ——以列表形式罗列出目内容,显示的信息更多,更详细pwd——查看当前目录是啥cd ——用来切换当前目录。/开头是绝对路径;.或…开头是一个相对路径,也可以删除;cd ~或者cd——打开该用户的home目录cd - ——回到上个目录cat——查看文件所有内容,使用echo > 写文件touch.

2021-07-24 13:43:47 66

转载 web相关知识点

web相关知识点1.HTML基本知识1.1定义1.2标签属性1.3事件属性1.4文本标签1.5多媒体标签1.6列表标签1.7表格标签1.8表单标签1.9其他语义化标签2.CSS基本知识2.1定义2.2编写CSS样式2.3CSS语法和选择器![CSS语法](https://img-blog.csdnimg.cn/5155acb0760045d1a2cdebf445fae30b.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_1

2021-07-24 10:29:25 517

转载 三次握手与四次挥手

三次握手一、握手流程刚开始客户端处于closed状态,服务器端处于listen状态。1、第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 SN©。此时客户端处于 SYN_Send 状态。2、第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,并且也是指定了自己的初始化序列号 ISN(s),同时会把客户端的 ISN + 1 作为 ACK 的值,表示自己已经收到了客户端的 SYN,此时服务器处于 SYN_REVD 的状态。3、第三次握手:客户端

2021-07-17 21:13:50 71

转载 常见的排序算法解读及Java实现

一、总述二、排序1.冒泡排序2.快速排序3.插入排序4.选择排序5.归并排序6.希尔排序7.堆排序8.计数排序9.桶排序10.基数排序一、总述排序算法是最基本的算法之一。可根据一下标准来分类:(1)根据内/外部排序可分为:<内部排序>:内排序:指在排序期间数据对象全部存放在内存的排序。包括插入排序,希尔排序,选择排序,冒泡排序,归并排序,快速排序,堆排序,基数排序。内排序效率用比较次数来衡量。<外部排序>:指在排序期间全部对象太多,不能同时存放在内存

2021-07-17 19:12:50 111

原创 定位url路径资源?拿来吧您嘞

前言url,即统一资源定位符,就是常见的浏览器中的网站地址,互联网上的每个资源都有唯一一个url。在浏览器搜索框中搜索输入内容时,网址后又会增添很多符号。乍一看,这不是乱码么?NONONO,这可不是乱码哦,它的每一部分都有存在的意义,接下来就认识一下url的各部分功能作用吧!url格式url由3部分组成:协议://主机地址/路径不同的协议有着不同的资源查找和传输的方式;主机地址指的是存放资源的主机(服务器)和IP地址(域名);路径指的是资源在主机中的具体位置。输入url后的运行流程(1)浏

2021-07-14 17:12:45 143

原创 2021-06-23

软件测试-概念篇什么是软件测试什么是需求什么是bug什么是测试用例开发模型和测试模型软件测试的生命周期如何描述一个bug测试人员所要具备的素质什么是软件测试答:通过“人工”或者“自动化”的方式,测试某个程序或者系统,进而检验是否满足规定的需求,或者实际结果和预期结果之间是否有差别。什么是需求答:需求指两个方面:用户的期望和规定的合同(文档,标准,规范所需要的条件和权能)。软件需求是由用户需求转化而来的,需求是开发人员和测试人员的依据。什么是bug答:1.当需求规格说明书存在并正确时,程序和规格

2021-06-23 14:00:48 124 2

原创 2021-06-22

!!!博客首发!!!第一篇博客终于开始啦!千里之行,始于足下,码农学习生涯正式打开,我会把学的知识的重点总结出来,把自己遇到的问题和解决方式记录下来,用以互相学习。如有错误,欢迎各位大佬们指正!小弟感激不尽!!!...

2021-06-23 11:03:02 68

空空如也

空空如也

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

TA关注的人

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