<dependencies> <dependency> <groupId>com.atlassian.util.concurrent</groupId> <artifactId>atlassian-util-concurrent</artifactId> <version>2.4.1</version> </dependency> </dependencies> import com.atlassian.util.concurrent.ThreadFactories; import com.google.common.collect.Lists; import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class ConcurrentTaskExecutor { public static void main(String[] args) { ExecutorService executor = Executors.newCachedThreadPool(ThreadFactories.namedThreadFactory("ConcurrentTask")); List<Runnable> tasks = Lists.newArrayList( () -> { }, () -> { }, () -> { } ); tasks.forEach(executor::execute); executor.shutdown(); } } import com.atlassian.util.concurrent.ConcurrentHashSet; import java.util.Set; public class ConcurrentDataSharing { public static void main(String[] args) { Set<String> sharedSet = new ConcurrentHashSet<>(); Thread thread1 = new Thread(() -> { sharedSet.add("Data 1"); }); Thread thread2 = new Thread(() -> { sharedSet.add("Data 2"); }); thread1.start(); thread2.start(); try { thread1.join(); thread2.join(); } catch (InterruptedException e) { e.printStackTrace(); } sharedSet.forEach(System.out::println); } }


上一篇:
下一篇:
切换中文