StringBuffer是安全的,StringBuilder是不安全的,那么这个多线程环境具体是指什么呢? 请问下Java Web项目当中,action类属于什么多线程环境吗?
收起
多线程环境就是应用程序中启动了多个线程,共享变量可能同时被多个线程同时访问的场景,如果是这样的话,对这些共享变量的访问必须做同步处理才能保证数据的一致性。StringBuilder类的方法作了同步即使用了synchronized加锁,所以能保证共享数据的正确,是线程安全的,而StringBuffer没有,所以是不安全的。 单线程环境就是整合应用程序中只有一个主线程,没有其他线程竞争。多线程环境下必须进行数据同步处理,才能保证正常的逻辑。
报告相同问题?