首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

面试官来了:讲讲快速失败和安全失败的区别?

Java 的 Fail-fast 和 Safe-fast 有什么区别?...快速失败& 安全失败 【快速失败】 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加、删除、修改),则会抛出Concurrent Modification Exception...场景:java.util包下的集合类都是快速失败的,不能在多线程下发生并发修改(迭代过程中被修改)。...【安全失败】 采用安全失败机制的集合容器,在遍历时不是直接在集合内容上访问的,而是先复制原有集合内容,在拷贝的集合上进行遍历。...我们都知道,序列化不会自动保存static和transient变量,因此我们若要保存它们,则需要通过writeObject()和readObject()去手动读写,所以通过writeObject()方法

34820
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    关于失败和优化

    当时的对话没这么简单,因为并不是所有人都能说明遇到的问题,更不是所有人都能坦诚面对自己的折腾,况且我还要考虑提问的方式和方法。但情况大抵如此,在服务研发中最不愿看到的场景,恰恰是最经常发生的。...如果改动太大,无疑会增加思考的成本和定位的难度。 而紧跟着的问题就是,如果作为一个fix版本上线,是否可以带入其他改动。我的回答是不行,因为也有太多次的失败来源于这个hotfix。...我们不怕优化失败,但是怕优化出来的失败。优化失败最多还是老样子,但优化出的失败很可能是一次雪崩。 有些优化不要做 回到最开始的那个例子,他的问题表现出来是盲目引入新库,做法与我们常规的处理方式相背。...这时候发生错误的话,已经没办法通知用户,导致服务只能偷偷失败。这是很容易气坏用户的处理方式。 2. 可以失败不要犹豫 另一个事是可以失败不要犹豫。...很多时候服务都是分层的,外层服务访问内层服务,需要应对各种失败,有环境问题像网络闪断机器故障等,有服务内部故障像空指针虚拟机崩溃等。那么问题来了,内层服务失败了怎么办?

    40520

    【Spring】获取 Cookie和Session

    回顾 Cookie HTTP 协议自身是属于“无状态”协议 无状态:默认情况下,HTTP 协议的客户端和服务器之间的这次通信和下次通信之间没有直接的联系 但是在实际开发中,我们很多时候是需要知道请求之间的关联关系的...客户端后续再给服务器发送请求的时候,需要在请求中带上 SessionId(通过 HTTP 请求中的 Cookie 字段带上) 服务器收到请求之后,根据请求中的 SessionId 在 Session 信息中获取到对应的用户信息...如果重启服务器,则 Session 数据就会丢失 Cookie 和 Session 的区别 Cookie 是客户端保存用户信息的一种机制。...Session 是服务器端保存用户信息的一种机制 Cookie 和 Session 之间主要是通过 SessionId 关联起来的,SessionId 是 Cookie 和 Session 之间的桥梁...Cookie 和 Session 经常会在一起配合使用,但不是必须配合 完全可以用 Cookie 来保存一些数据在客户端。

    12310

    微信小程序wx.getUserInfo接口获取用户信息失败,新版SDK怎样获取用户信息

    一、简述 在微信小程序的官方文档中提到,调用wx.getUserInfo接口将能获取小程序用户的信息,接口返回的信息格式如下 { "nickName": "Band", "gender": 1,...但是腾讯也提供了新的方式,以下演示获取用户信息的流程。...我们要获取用户信息,所以值指定的是getUserInfo,更多属性值可以参考微信小程序 bindtap:绑定一个授权结果回调函数,在js文件中创建对应方法,详细代码如下 onGotUserInfo:...因此可以使用bindgetuserinfo回调方法,获取用户信息,方便提交给业务服务器。 2.使用 open-data 展示用户基本信息 open-data控件用于展示微信开放的数据。...,需要引导用户手动点击一个button按钮弹出授权窗口,让用户手动授权,开发者才能成功获取用户信息。

    3K20

    Spring 切面失败和目标类空指针问题

    xx 是把关键字隐去了) com.xx controller controller.api common entity 等等 可以看到我的切面是切的 controller 以及它下面的子包 api 和相关的类...解决异常 在爆发了空指针后,首先第一反应就是切面是否正常,查看 execution 表达式,以及测试 Controller 下的其他类,正常,所以排除 切面类的问题 在某个空指针的地方 debug,然后手动获取...statisticsController.knowledgeService = this.knowledgeService; } 然后在 init 方法中 debug, 发现在 Spring 启动的时候,statisticsService 和...一行一行的和正常的类比较代码, 当然,结果出来了,发现出问题的 Controller 的方法都是 private 的,正常的都是 public 的,然后查找相关的 文档,找到了原因 与AspectJ...而我们上面的空指针问题,其实就是 切面已经代理了 Controller 下的类,但是又没有被切到,造成了注入的失败。

    1.6K20

    获取activexobject对象失败_在各种管理对象中最重要的是

    ==打开Internet Explorer “工具”菜单栏中的“选项”一栏,单击“安全”栏中的“自定义级别”选项卡,将第三项“对没有标记为安全的activex控件进行初始化和脚本运行”设置成“启用”即可...,GetFolder负责获取文件夹信息,GetFile负责获取文件信息。...FileSystem:所在驱动器的文件系统类型,取值为FAT、FAT32和NTFS。 1. IsReady:驱动器是否可用。 1. ShareName:共享名称。 1....Path和RootFolder:驱动器的路径或者根目录名称。...fso.GetFile(“c:\\temp\\testfile.txt”); // 删除文件 f2.Delete(); f3.Delete(); 六、结 语 通过以上对FileSystemObject的各种对象、属性和方法的介绍和示例

    1K40

    Zookeeper 分布式锁原理、源码及获取失败问题

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。...block_id=tuijian_wz 分布式锁_慕课手记 http://www.imooc.com/article/details/id/256334 lock.acquire获取分布式锁失败 Java...对比获取锁过程,将生成节点路径缩短 ? 客户端断开后重连,已经可以正常获取锁 锁信息如下,分别是获取分布式锁生成节点,以及获取分布式id中workid生成节点 ?...获取分布式锁生成节点,以及获取分布式id中workid生成节点 ? 客户端断开后重连,原生成的workid节点已经删除,但路径还在 ?...jar包版本,下载地址:https://repo1.maven.org/maven2/org/apache/zookeeper/zookeeper 客户端与服务器的时间不一致,超时未释放 测试可以临时节点和递增节点

    1.9K20

    flask使用request获取表单提交数据和获取url

    基本使用 web开发免不了需要获取用户提交的数据,Flask为我们提供了request对象来获取用户提交给服务器的数据。...下面是一个最基本的获取数据的例子: 在templates文件夹下的login.html文件中添加如下代码: 获取全部参数 request对象提供了values属性来获取表单提交的全部数据,我们在app.py中添加request.values form flask improt Flask, render_template..., request app = Flask(__name__) # 配置路由,获取用户提交的登录信息 # 指定请求方式,如果不指定,则无法匹配到请求 @app.route("/login", methods...return redirect("/") return "用户名密码错误" app.run(host="0.0.0.0", port=9527, debug=True) flask通过request获取

    3.1K10
    领券