Java
文章平均质量分 92
中国移动用户
这个作者很懒,什么都没留下…
展开
-
Synchronized
synchronized是JVM内置锁,基于monitor实现,依赖操作系统互斥原语Mutex(互斥量)JDK1.5之后做了优化:锁粗化、锁消除、偏向锁、轻量级锁、重量级锁、自适应自旋等技术,都是优化手段作用于同步方法时:通过方法中的access_flags中设置ACC_SYNCHRONIZED标志来实现作用于同步代码块:通过monitorenter和monitorexit来实现原创 2022-11-18 16:44:16 · 221 阅读 · 1 评论 -
sleep()和wait()
sleep()方法属于Thread,wait()属于Objectsleep()会抱着锁暂停程序运行,不会主动让出cpu去执行其他线程,必须指定时间,时间到了自动醒来wait()方法会主动让出cpu给其他线程,如果没有唤醒将永远等待下去,只有调用notify()方法才能唤醒它...原创 2018-07-20 14:47:45 · 201 阅读 · 0 评论 -
REST风格框架实战
摘要: 本人在前辈《从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)》一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并实现前后端分离,该项目体现了一个具有REST风格项目的基本特征,即具有统一响应结构、 前后台数据流转机制(HTTP消息与Java对象的互相转化机制)、统一的异常处理机制、参...转载 2018-07-20 14:36:46 · 2324 阅读 · 0 评论 -
Logger日志
浅谈Logger日志输出不同的日志文件 其实一直想动态生成路径和文件名称,但是log4j只能加载系统环境变量类似于${webapp.root}动态获取安装路径,框架首先加载配置文件创建文件路径和文件名称,通过手动控制等待代码设置环境变量后再加载可以实现动态生成文件名称,但是系统环境变量不支持并发,导致文件生成有误,路径可以动态获取,因此文件名只有通过手动配...转载 2018-06-27 16:28:17 · 529 阅读 · 0 评论