2019第24周日
JDK8中引入了高性能的读写锁StampedLock,它的核心思想在于,在读的时候如果发生了写,应该通过重试的方式来获取新的值,而不应该阻塞写操作。这种模式也就是典型的无锁编程思想,和CAS自旋的思想一样。这种操作方式决定了StampedLock在读线程非常多而写线程非常少的场景下非常适用,同时还避免了写饥饿情况的发生。
要注意高性能读写锁的使用前提时CAS自旋操作小于阻塞等待,如果多线程场景中每次都会阻塞,那直接用悲观锁或许会更好。
使用 Instrumentation,开发者可以构建一个独立于应用程序的代理程序(Agent),用来监测和协助运行在 JVM 上的程序,甚至能够替换和修改某些类的定义。Instrumentation是Java SE 5中的新特性。在SE 5中只能在运行前进行加载,在SE 6中实现能够在运行时加载。例如java -javaagent: agent.jar -jar agent-demo.jar
程序员所掌握的技术的淘汰速度可能还没有商业模式淘汰的速度快,商业模式的快速进步和更新必然要求技术能够快速更新以支持其发展。
除了运气,大部分赚钱的程序员都有很敏锐的商业思维,他们不仅会技术把事情落地,更知道做什么是社会需要的,能产生更大的价值。比如接私活,雇一帮人接私活;线下教别人编程与制作教程视频教别人写代码等。
技术只是解决问题的一种手段,不同场景解决不同问题可以使用不同的手段,所以你不能仅限于某一种技术,设计方案时要重于技术选型,看哪种技术更适合团队、哪种技术解决问题的成本更低、哪种技术从长远来看能实现更大效益。
知道技术的演变过程,它背后的原理和推动力,能让你更好的理解它未来的发展。
现代社会要想做的更好,必定要处理好与周边同事的关系,即做好向上管理(及时沟通确认目标、计划,经常反馈沟通任务进度,管理并尽量超出上级预期),也要做好横向管理和向下管理(调动更多的资源齐心达成自己原定的目标)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2018-06-16 JUC类图
2017-06-16 不知道如何决定的时候就快速决定
2016-06-16 JMS是一种应用于异步消息传递的标准API
2015-06-16 2015第25周二
2014-06-16 第25周一
2013-06-16 2013年6月16日星期日
2012-06-16 监控摄像机的区别和分类