Welcome everyone

2018年8月月的内容

面试

美团现场面试

美团现场面试
java多线程 volatile的作用 (可见性,防止指令重排序) 线程池 Zookeeper的应用场景 问了点项目 怎么解决暴力破解 (重复登陆账号密码,如果一直错误,会不会冻结用户) 怎么实现单点登陆 手写算法: 1,找出字符串中出现次数最多的字符 2,字符串的全排列 3,1...

汪明鑫 6年前 (2018-08-29) 819浏览 0评论 0喜欢

java

线程池

线程池
任务数量多时,用线程池更快 先看下Executor整体架构 那么Executors是什么? 类比Array、Arrays,Collection、Collections -s表示工具类 用底层,看顶层,想要用一个框构的底层、实现类,先要看其最顶层 public i...

汪明鑫 6年前 (2018-08-28) 800浏览 1评论 0喜欢

java

volatile

volatile
volatile保证可见性不能保证原子性   《深入理解java虚拟机》中: /** * volatile变量自增运算测试 * * @author zzm */ public class VolatileTest { public...

汪明鑫 6年前 (2018-08-28) 737浏览 3评论 0喜欢

java

Lock

Lock
Lock更灵活,功能更丰富 public interface Lock { void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); ...

汪明鑫 6年前 (2018-08-28) 722浏览 0评论 0喜欢

java

synchronized

synchronized
synchronized是java内置关键字,解决共享数据冲突,是一个可重入锁 synchronized( 需要一个任意的对象(锁) ){ 代码块中放操作共享数据的代码 多个线程不能同时进行的部分 } 锁就是一个标记 如果用的不是一把锁,则两...

汪明鑫 6年前 (2018-08-28) 693浏览 0评论 0喜欢

java

可重入锁

可重入锁
设计一个不可重入锁 public class Lock{ private boolean isLocked = false; public synchronized void lock() throws InterruptedException{ ...

汪明鑫 6年前 (2018-08-28) 612浏览 0评论 0喜欢

java

Get VS Post

Get VS Post
最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 GET请求在URL中传送的参数是有长度限制的,而POST没有。 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。 GET比POST更不安全,因为参数直接暴露在URL上,所...

汪明鑫 6年前 (2018-08-28) 682浏览 0评论 0喜欢

java

CAS

CAS
【CAS    Compare and Swap】 CAS 的关键点在于,系统在硬件层面保证了比较并交换操作的原子性, 处理器使用基于对缓存加锁或总线加锁的方式来实现多处理器之间的原子操作。 CAS 是非阻塞同步的一种常见实现。 CAS不会把线程挂起,性能要好的多,通常是基于...

汪明鑫 6年前 (2018-08-28) 757浏览 0评论 0喜欢

更多

wifi显示不了

wifi显示不了
wifi突然显示不了了,网卡有没有被禁用 打开设备管理器,网络适配器,卸载这个再重装,OK 转载请注明:汪明鑫的个人博客 » wifi显示不了...

汪明鑫 6年前 (2018-08-28) 639浏览 0评论 0喜欢

算法和数据结构

算法回马枪 荷兰国旗

算法回马枪 荷兰国旗
何谓荷兰国旗: 现有红、白、蓝三个不同颜色的小球,乱序 排列在一起,请重新排列这些小球,使得红 白蓝三色的同颜色的球在一起。这个问题之 所以叫荷兰国旗,是因为我们可以将红白蓝 三色小球想象成条状物,有序排列后正好组 成荷兰国旗。   问题转化: 一个数组a,输入一个数...

汪明鑫 6年前 (2018-08-27) 876浏览 2评论 1喜欢