静态方法 是不是 线程 安全的 1,既然只有一个实例,那是否可以说,哪怕多线程调用,它也会类似 同步块,同时只能供一个线程 使用,其他线程需要等待2,若 在静态方法内部 处理静态变量,或是 处理共享数据, 基于1的假设,那么 不可能有多个线程同时操作静态变量 或是共享数据阿,那如此说来就是 线程 安全的咯??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我认为楼主发帖子的目的是想讨论什么时候加锁什么时候不用加锁而不是 如何加锁2楼的意思,我理解的是:“不管静态方法是否访问了静态成员都要加锁”不访问静态成员加锁,至少我认为是没必要的。你写一个XXXServlet继承了HttpServlet比如pulic class MyServlet extends HttpServlet{ private String str = ""; public void service(){ /*如果你在这里修改str,那么必须加锁*/ }}当然这个例子可能不恰当,因为service方法不是静态方法不过因为Servlet是单例的,所以一样可以起到说明效果 for(Enployee e:staff) 什么意思啊? 如何获得文件名(不要后缀)? 编程,弄出图形界面了。但是要增加下拉列表和有响应应该怎么弄?有源代码 弱弱的问一下 SCJP2是什么证书 和SCJP有什么区别 java 反射 外部类 问题 求东软历届笔试题 怎么打包? 为什么我的Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");过不去? 刨根问底:java调用构造函数与产生对象的关系 如何高效的进行表达式的验证 在线等,新手请教高手一个随机数问题 请问下这种界面如何做
2楼的意思,我理解的是:“不管静态方法是否访问了静态成员都要加锁”不访问静态成员加锁,至少我认为是没必要的。你写一个XXXServlet继承了HttpServlet比如pulic class MyServlet extends HttpServlet{
private String str = "";
public void service(){
/*如果你在这里修改str,那么必须加锁*/
}
}
当然这个例子可能不恰当,因为service方法不是静态方法不过因为Servlet是单例的,所以一样可以起到说明效果