摘要:
1.生成ssh密钥 ssh-keygen -t rsa -C "xuzhiyuan01@keep.com" 输入密码,如不输入密码在pull,push时也不需要输入密码,所以不需要将密码的管理交给ssh-agent; 2.打开ssh-agent eval "$(ssh-agent -s)" 3.将私 阅读全文
摘要:
mac常用快捷键: commend+tab 不同应用之间切换 commend+shift+3 截全图commend+shift+4 选择截图 commend+s 保存commend+shift+s 另存为 commend+w 关闭commend+q 退出commend+option+esc 强制退出 阅读全文
摘要:
1.首先自我介绍 2.说说学过哪些技术,做过哪些项目 3.hashmap原理,说说红黑树,hashmap是否线程安全,什么是线程安全,什么是线程不安全,hashmap为什么不是线程安全, 4.concurrenthashmap如何实现线程安全,还有哪些锁实现线程安全 5.如何实现成生产者消费者模式, 阅读全文
摘要:
参考:https://www.cnblogs.com/nullzx/p/8729425.html 阅读全文
摘要:
1.悲观锁: 悲观锁是一种比较悲观的思想,认为每次操作都会修改变量的值,因此每次对变量就行操作都会进行加锁; 数据库中的行锁,表锁,读锁,写锁都是悲观锁的实现; java中的syschronized关键字也是悲观锁的实现; 2.乐观锁: 乐观锁就是一种比较乐观的思想,认为每次操作都不会进行修改变量, 阅读全文
摘要:
1.Callable接口中定义了带有返回值的call()方法; 2.Runnable接口中定义了无返回值的run()方法; 3.Future接口中定义了判断任务是否完成的方法,中断任务的方法,获取任务的返回值的方法; 4.FutureTask实现了RunableFuture接口;RunableFut 阅读全文
摘要:
1.syschronized是关键字,lock是接口;syschronized是内置的,基于jvm层面的,所以发生异常时会自动释放锁;二lock是基于代码的,发生异常的时候使用unlock()释放接口; 2.lock接口通过其中的lockInterruptibly()方法可以中断正在等待获取锁的线程 阅读全文
摘要:
1.Future设计模式原理是客户端发送一个请求,处理器立即返回一个FutureData数据并且进行异步的获取真正的数据;在客户端真正需要用到实际数据的时候再去获取真正的数据; 原理图如下: 2.模拟实现future设计模式: (1)定义Data接口 (2)RealData实现Data接口 (3)F 阅读全文
摘要:
1.饿汉模式:在类加载的时候就创建对象,对系统的开销较大,但是不存在线程的安全问题; 2.懒汉模式一:懒汉模式在需要对象的时候才进行对象的创建, 3.懒汉模式性能安全的性能优化:上述的懒汉模式虽然是线程安全的,但是线程每次在调用getInstance()方法的时候都会对这个方法进行上锁,其实这样是没 阅读全文
摘要:
1 class MQueue { 2 3 private List list = new ArrayList(); 4 5 private int maxSize; 6 7 private Object lock = new Object(); 8 9 public MQueue(int maxSize){... 阅读全文