【ConcurrentHashSet】并发安全的Set(guava中还是有不少有价值的库的)

 Set set = Sets.newConcurrentHashSet();
        for (int i = 0; i < 100; i++) {
            new Thread(() -> {
                int n = ThreadLocalRandom.current().nextInt(100);
                if (n > 50) {
                    set.add(n);
                } else {
                    set.remove(n);
                }
                log.info(String.valueOf(set));
            }).start();
        }

好处:如果在多线程下访问,普通的HashSet则会出现 “并发修改”的异常,线程安全的Set下则不会出现。

你可能感兴趣的:(#,java多线程,java)