executorservice

    2热度

    1回答

    所以我使用executorservice来创建一个线程池。 ExecutorService executor = Executors.newSingleThreadExecutor(); 我试图访问该线程池的队列中的任务数。我发现没有办法去解决这个问题。 我知道有一些方法可以在threadpoolexecutor中获得队列大小,但是我怎么用executorservice对象来做到这一点。 就像

    0热度

    1回答

    我正在创建一个需要多个进程并行运行的应用程序。要运行的进程数是动态的,它取决于接收到的输入。例如,如果用户想要关于三种不同的事物[汽车,自行车,汽车]的信息,那么我需要三个独立的线程来并行运行每一个线程。 numberOfThreadsNeeded = getNumberOfThingsFromInput(); ExecutorService executor = Executors.newF

    0热度

    1回答

    我想写一个封闭的类从网上下载图像,每隔30秒刷新一次。我可能想下载1张图片,或者我想下载N张图片。我可能会随时停止下载某个图片。我写了下面这个很好用的类,除非我停止下载一个没有被释放的图像内存。或者如果我停止下载所有图像,内存不会被释放(这不会在生产中发生)。我尝试了几种不同的方法来实现这一点。我最后一次尝试是使用相同的执行程序或单独执行程序下面的代码每30秒清除ScheduledThreadPo

    0热度

    1回答

    我想找到一种方法来利用ExecutorService.submit(Runnable r,T结果)方法,但无法找到/想象任何。 任何人都可以解释如何最好地利用这种方法与代码示例。 在此先感谢。

    1热度

    2回答

    问题: 如何做出一系列已经与invokeAll停止执行超时线程。 背景: 我有callables我想等完成的列表。但是,如果他们没有在规定时间内完成(比如说一秒),我想取消它们。这似乎很容易与 executor.invokeAll(callables, 1000l, TimeUnit.MILLISECONDS); 所以一秒钟后,它会超时很好,我可以继续我的一天。但是在后台,线程仍然处于活动状态

    0热度

    1回答

    我创建了一个食品订购系统,当按下按钮时,它将调用一个方法,然后查询数据库以找出当前数量,然后查询另一个表以找出数量每道菜需要,然后用新数量更新数据库。这需要一两秒钟的时间,所以我想在用户每次订购一个项目时在新的线程上运行它,以便在每次按下按钮后都不会挂起。我试图用executorService,但我仍然得到一个InvocationTargetException错误。 下面是代码: public E

    0热度

    1回答

    从控制器类沟通,我打电话这个助手启动一个进程并返回到该进程启动的UI 助手类: public class Helper { public String startService() { //Before starting the service I save the status of the service as Started in the DB ExecutorService

    0热度

    1回答

    您好我想运行下面的代码,并且在执行器被终止后,我期待剩余任务的计数为0,但由于某种原因,当它满足以下条件时它超过100。 while(executor.isTerminated()) { System.out.println("Total Task Remaining : " + ExecutorServiceExample.task.size()); System

    3热度

    1回答

    对Java,但我想不通为什么这个程序没有结束: import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; class Main { public static void main(String[] args) { ScheduledExecut

    0热度

    2回答

    enter image description here即使在调用执行程序中断shutdownNow方法后,线程也不会停止。 线程调用功能正在while循环中运行,它正在检查中断标志。 我试过在一段时间后向正在运行的线程发送中断标志,但它仍然在执行。我想强制停止线程。 任何人都可以说出这种行为。 附加样本Java代码: public class TestExecutor { static v