有没有理由为ExecutorService
使用固定线程池生成的后台线程不起作用?
ThreadFactory bgThreadFactory = ThreadManager.backgroundThreadFactory();
ExecutorService executorService = Executors.newFixedThreadPool(nThreads, bgThreadFactory);
如果我创建MoreExecutors.sameThreadExecutor()
,它就像魅力一样,但没有多线程。
答案 0 :(得分:1)
似乎背景线程也适用于Executors.newFixedThreadPool(nThreads, bgThreadFactory);
但是,由于某种原因,后台线程不会生成日志(至少不是所有时间 - 仍然不知道原因)。
答案 1 :(得分:0)
从应用引擎java上的docs开始,您需要通过调用com.google.appengine.api.ThreadManager.currentRequestThreadFactory()
创建一个线程工厂,然后调用工厂的newRequestThread()
方法。