线程安全

本文所有内容,皆属于个人观点,如存在错误,欢迎批评指正.

多线程的情况下访问共享的数据,这样会对同一个数据进行操作,存在安全隐患.

servlet

servelt是单例多线程的 ,servlet 仅仅被初始化一次,当多个线程访问时,访问的是同一个servlet的实例.如果多个线程访问的是servlet中的方法,那么是不存在安全问题的,因为每个线程中的方法是相互独立的.如果访问的是servlet中的全局变量,那么每个线程访问的都是同一个变量,存在安全问题,全局变量被多个线程共享.如果想在servlet中使用全局变量,可以使用threadlocal,把变量绑定到每个线程中.

struts

struts 针对每个线程对应的是一个action的实例,存在线程安全问题.

struts2

struts2 对应每个线程都会有一个action的实例,线程之间安全.

对于多个线程读取到共享的数据存在安全的问题,可以使用线程同步锁解决,不过一旦使用synchronized会降低系统的速度.

本文所有内容,皆属于个人观点,如存在错误,欢迎批评指正.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值