【发布时间】:2010-01-05 19:26:41
【问题描述】:
我想创建一个后台线程来处理一些任务(可运行)并按照它们发布的顺序执行它们。
重要提示:这些任务不得在 Event Dispatcher 线程上执行。
类似:
BackgroundEventThread backgroundEventThread = new BackgroundEventThread();
然后,稍后,在代码中的许多地方:
Runnable thingToDo = new Runnable(){...};
backgroundEventThread.executeThis(thingToDo);
//the things to do will be executed in the order in which they are posted.
BackgroundEventThread 类的代码应该非常简单,但我想知道这样的类是否已经存在于 JDK 或某个公共库中我不知道的某个地方...
编辑:我事先不知道要在这个线程上执行的任务数。
我可以:
- task0(真的很短)发生在 t0
- task1(处理时间长...)发生 在 t0+1s
- task2(短)发生在 t0+5s 等。
- task3(等等,等等……)
我需要task2(我事先不知道)在task1之后执行,我希望所有这些任务尽快执行。
与在 EDT 上发布的任务完全一样,但不是在 EDT 上。
【问题讨论】:
标签: java events multithreading