摘要: 多线程死锁:同步中嵌套同步,导致锁无法释放 模拟死锁的情况: 两个线程,线程1 进入 对象锁,然后开始sale(),线程1 占据了this 锁(会放开),占据了对象锁(长期) 线程2 进入了sale(),占据了this 锁,因为对象锁被线程1 占据,所以不能继续执行,同时因为占据了this 锁,线程 阅读全文
posted @ 2019-06-13 17:17 Chris,Cai 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1,为什么有线程安全问题? 当多个线程同时共享同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 可能出现的情况:同时卖了某一张票 问:为什么使用线程同步或使用锁能解决线程安全问题呢? 答:将可能会发生数据冲突问题(线程不安全问题 阅读全文
posted @ 2019-06-13 15:57 Chris,Cai 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 1 线程和进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合, 或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线 程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。 总结:进程 阅读全文
posted @ 2019-06-13 11:21 Chris,Cai 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 1,需要的包 2,需要的配置文件:放在classpath 路径下,或者 src/main/resource 名称:log4j2.xml 3 调用方式 阅读全文
posted @ 2019-06-13 11:14 Chris,Cai 阅读(125) 评论(0) 推荐(0) 编辑