我们需要考虑的线程安全
1.我们自己写的代码,在web环境下是同一个servlet
2.我们需要考虑的是,tomcat来一个请求就是一个线程,这个线程随即调用servlet的相应方法,
3.考虑的点应该是
1.写的代码块
2.代码块中的共享数据
3.重点就是 这个共享数据
之前的错误观点
1.例子:arrayList为什么是线程不安全的
2.我的观点:直接上来就是new arrayList,然后调 add方法,add方法中操作的是arraylist的内存,
但是没有考虑,这个new arrayList 如果是多个线程来执行这段代码,那么就会new 多个arraylist 这就不存在在相同的arraylist上操作了,也就谈不上线程安全问题了
3.所以重点:判断这段代码块中有没有共享数据:
具体:想象多个线程来执行这个代码块方法,这段代码块有没有数据是共享的