java的锁

万物皆字节 2012-12-11 12:06:27
请大家指点指点:当一个线程进入一个类的synchornixed方法,其他的线程能不能进入这个类的其他非synchronized方法呢?
...全文
190 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jacky-止涯 2012-12-11
  • 打赏
  • 举报
回复
引用 楼主 Aqu415 的回复:
请大家指点指点:当一个线程进入一个类的synchornixed方法,其他的线程能不能进入这个类的其他非synchronized方法呢?
【锁】对应的就是【钥匙】,现在把代码块比作一个房子:没有synchronized (锁) 的代码就是房子的外墙,不需要钥匙也能看得见;而被锁住的代码就是房子的内部,需要开锁后进去才能看得见。 只要拿到钥匙就能进屋 (访问被保护的代码)。但是钥匙只有一条,所以你需要排队领钥匙,等上一个人(线程)出来把钥匙交给你了,你才能进去。 这样保证了一次只能一个人进屋(一个线程访问),避免了数据的冲突。想进去的人需要排队等钥匙,就是线程的阻塞。 ------------------------------------------------------------- 楼主的问题,就是一个人拿钥匙进屋了,另一个人能不能看得见房子的外墙? 这显然是“可以”的。
赏金--猎人 2012-12-11
  • 打赏
  • 举报
回复
洗手间是一个类, 蹲坑是一个方法,洗手也是一个方法,蹲坑的时候不可能两个人共用一个坑(除非是好jy),必须上一个解决完了,才能轮到下一个人。不过,洗手就不用了,两个人可以共用一个水龙头。多好啊! 所以除了加锁的函数,其他的都是可以共用的。
BadPattern 2012-12-11
  • 打赏
  • 举报
回复
可以,楼主结贴率为0
yongger520 2012-12-11
  • 打赏
  • 举报
回复
可以的 java基础知识
流星陨落 2012-12-11
  • 打赏
  • 举报
回复
引用 4 楼 szx_zsx 的回复:
洗手间是一个类, 蹲坑是一个方法,洗手也是一个方法,蹲坑的时候不可能两个人共用一个坑(除非是好jy),必须上一个解决完了,才能轮到下一个人。不过,洗手就不用了,两个人可以共用一个水龙头。多好啊! 所以除了加锁的函数,其他的都是可以共用的。
引用 5 楼 tai8feng 的回复:
当然能,你只锁了方法。类又没锁~!
司机 2012-12-11
  • 打赏
  • 举报
回复
当然能,你只锁了方法。类又没锁~!
内容概要:本文档系统讲解了创意版烟花的完整实现路径,从粒子系统原理出发,深入剖析烟花效果的五大核心阶段——上升、爆炸、扩散、衰减与拖尾,并基于四种技术栈(HTML5 Canvas、Three.js、Python Pygame、AI音乐节拍同步)提供可运行的完整代码方案。文档涵盖基础实现、视觉增强(形状变化、闪烁、二次爆炸)、交互升级(鼠标拖动、手势控制)、性能优化(对象池、渲染优化)、部署上线(GitHub Pages、Vercel)及创意拓展(文字烟花、数据可视化、协同互动),形成“原理→编码→调优→部署→创新”的闭环学习链路。同时融入Web Audio API节拍检测、滑动窗口动态阈值等实用算法,助力开发者打造兼具美观性与技术深度的动态视觉作品。; 适合人群:具备基础编程能力的前端开发者、Python爱好者、多媒体交互设计人员,以及希望提升图形编程与动效设计能力的工作1-3年研发人员;也适用于教学演示、作品集建设或创意项目原型开发。; 使用场景及目标:①掌握粒子系统在动画与游戏开发中的底层实现机制;②实现网页端与桌面端的高性能烟花特效;③构建音乐可视化、数据艺术、互动装置等融合型项目;④学习从代码实现到线上部署的全流程工程实践。; 阅读建议:建议按照“Canvas基础→进阶优化→3D/Pygame/AI扩展”的路径逐步实践,重点关注参数调优表与性能优化策略,在调试中理解每行代码的作用;对于音乐同步等复杂功能,可先运行成功案例再深入算法逻辑,结合实际项目需求灵活组合各项技术模块。

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧