我们都知道HashMap是线程不安全的,在多线程环境中不建议使用,但是其线程不安全主要体现在什么地方呢,本文将对该问题进行解密。1.jdk1.7中的HashMap在jdk1.8中对HashMap做了很多优化,这里先分析在jdk1.7中的问题,相信大家都知道在jdk1.7多线程环境下HashMap容易出现死循环,这里我们先用代码来模拟出现死循环的情况:publicstaticvoidmain(Str
分类:
编程语言 时间:
2020-02-20 16:54:34
阅读次数:
67
''' i= 10 while i>10: print(i) 这就是一个死循环 1.打印变量,但是变量没有改变 2.判断的条件不能永远是true ''' '''i=1 while i<= 30: i+=1 if i%3 ==0: print(i) else: pass ''' '''i = 0 wh ...
分类:
其他好文 时间:
2020-02-14 12:35:46
阅读次数:
65
vim/etc/rc.d/rc.local#这个文件就是liunx启动,自定放脚本的命令或者脚本#如图我在最后一行加了一个自定义脚本,注意建议脚本后面加"&",加了&脚本就是在后台运行,如果不在后台运行,脚本里有死循环,开机会卡在死循环脚本内容#该脚本实现作用,监听udp9端口,接收到对的报文执行关机命令
分类:
系统相关 时间:
2020-02-13 09:42:56
阅读次数:
79
tips: 1.注意边界处理,避免出现死循环 785. 快速排序 /* eg:2 1 2 用i则不能取到左边界,把x取值改成向上取整 用j则不能取到右边界,把x取值改成向下取整 取到边界会导致递归死循环 */ #include<iostream> #include<cstdio> using nam ...
分类:
其他好文 时间:
2020-02-12 21:57:31
阅读次数:
71
12.1 三种循环的区别 三种循环的区别: 1.如果条件判断从来没有满足过,那么for循环和while循环将会执行0次,但是do-while循环会执行至少一次。 2.for循环的变量在小括号当中定义,只有循环内部才可以使用。while循环和do- while初始化语句本来就在外面,所以出来循环之后还 ...
分类:
其他好文 时间:
2020-02-08 15:38:40
阅读次数:
62
为了解耦合,使显示与逻辑分离。 我觉得是因为一般GUI的用户输入频率比较低,如果每个部分不停做轮询去获取用户输入,浪费时间 又可能比较难处理。而事件处理则是由中央的系统把输入事件派送给需要的部分。 桌面上,最广为人知的消息循环恐怕就是Windows了,WinMain 方法都是一个死循环,不断的读取并 ...
分类:
其他好文 时间:
2020-02-08 00:41:39
阅读次数:
88
1.递归函数:在函数中调用本身。 (1)特性:1)要有明确的结束条件(必需要用返回值return,否则会陷入死循环)。 2)递归函数效率不高。原因:函数会一层一层进行,一层一层进行返回。 (2) def red(k): if k == 5: print("结果刚刚好") return if k < ...
分类:
其他好文 时间:
2020-02-06 16:40:43
阅读次数:
58
线上系统突然变得卡顿或无法访问,排除网络异常的情况下,检查服务器资源占用情况,如果CPU、内存、磁盘IO等资源占用过高,就会导致无法继续处理HTTP请求。 如果是CPU占用飙高,有可能是程序中存在死循环、死锁导致的,也有可能是内存紧张从而频繁GC导致的,要具体问题具体分析。 排查过程 这里记录一次线 ...
分类:
其他好文 时间:
2020-02-06 11:07:57
阅读次数:
75
递归函数 在函数内部,可以调用其他函数,如果一个函数的内部调用了自己本身,那么这个函数就是递归函数。 什么?函数还可以自己调用自己?那不是一个死循环吗?请看下例: 会不会感觉很繁琐,如果使用递归函数来实现会不会简单些? 分析一下代码,当n小于等于0的时候,直接给出和值为0,这句不能省。当n大于0时, ...
分类:
编程语言 时间:
2020-02-04 13:46:39
阅读次数:
66
次面试事故面试官:你看过哪些源码?我:都挺熟悉的面试官:对hashMap了解程度怎么样?面试官:那你能讲讲 HashMap的实现原理吗?面试官:HashMap什么时候会进行 rehash?面试官:结合源码说说 HashMap在高并发场景中为什么会出现死循环?我:…我:抱歉…面试官:嗯。面试官:… 把 ...
分类:
编程语言 时间:
2020-02-04 10:24:07
阅读次数:
98