gpt4 book ai didi

java - 如果单例 block 中的内部静态可运行对象用作可调用对象的包装器,如果它修改单例的静态参数,它会吗?

转载 作者:行者123 更新时间:2023-12-02 06:48:25 26 4
gpt4 key购买 nike

1) 如果内部静态 Runnable 类在调用 Callable 后修改外部单例中的静态 ConcurrentHashMap ,它是否有可能阻塞?我正在考虑一个场景,其中多个可运行对象同时对 map 中的同一项目进行修改。多个可运行对象在外部单例的静态 ThreadPoolExecutor 中运行。

2) 如果我执行 val = myCallable.call(),可调用对象是否会在与可运行对象相同的Thread 中调用?它根据可调用的结果修改并发 HashMap 。

最佳答案

  1. ConcurrentHashMap 被设计为非阻塞,但如果同时发生对同一哈希段的多次更新,则可能会出现一些争用。
  2. 是的。

关于java - 如果单例 block 中的内部静态可运行对象用作可调用对象的包装器,如果它修改单例的静态参数,它会吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18338651/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com