我目前正在研究一个osgi框架,并且遇到了一个查询点:多线程实例访问时是否是线程池线程安全?
当您实例化一个类的多个实例时(例如通过工厂),它将创建任务并将它们提供给workerthreads来源在同一个线程池中,我是否需要从这些实例调用该线程池线程安全?
编辑这是我的线程池代码:
public class JournalThreadPool{ private static ExecutorService executor; private JournalThreadPool(){ } public static ExecutorService getUniqueInstance(){ if(executor == null) executor = Executors.newCachedThreadPool(); return executor; } }
我还有谁创建任务多线程和任务,从这个线程池分配给一个线程像这样:
JournalThreadPool.getUniqueInstance().execute(RunnableTask);
这会产生冲突吗?例如,当2个线程试图同时执行他们的任务时?
评论未知代码的线程安全性是完全不可能的。告诉我们你的代码。 –
我还没有写任何代码,我基本上需要知道是否需要同步调用:ExecutorService.execute(workerThread)当这个调用将来自多个实例(以多线程方式)。 – Don