Java 线程和任务的关系是什么?
我知道线程和任务处于不同的抽象级别。但无论如何,我仍然不清楚它们之间的关系。顺便说一下,我认为任务告诉我们如何做一项工作,线程实际上是根据一个任务实例来执行工作的。我的理解正确吗?谢谢你^我假设任务的意思是Java 线程和任务的关系是什么?,java,oop,Java,Oop,我知道线程和任务处于不同的抽象级别。但无论如何,我仍然不清楚它们之间的关系。顺便说一下,我认为任务告诉我们如何做一项工作,线程实际上是根据一个任务实例来执行工作的。我的理解正确吗?谢谢你^我假设任务的意思是可运行的和可调用的。关系很简单: 线程可用于执行多个任务 可能-因为你不需要一个单独的线程来执行任务(从技术上讲,一切都在一个线程中运行-你不需要一个单独的线程) 多线程可重用;它可以从集合(如队列)中运行多个任务 通常一个线程执行一个Runnable传递给thread构造函数的或多个Ca
可运行的和可调用的。关系很简单:
线程可用于执行多个任务
- 可能-因为你不需要一个单独的线程来执行任务(从技术上讲,一切都在一个线程中运行-你不需要一个单独的线程)
- 多线程可重用;它可以从集合(如队列)中运行多个任务
通常一个线程执行一个Runnable
传递给thread
构造函数的或多个Callable
传递给ExecutorService
(在大多数情况下包装线程池)。如果通过Task
你的意思是,不同之处在于,任务用于运行某些类似线程的代码执行,但具有附加属性,例如何时运行、运行多少次以及取消执行的选项,而线程只需立即执行一次。任务相当抽象,它可以作为进程或线程来实现。您的理解是正确的
我们可以做这样的类比:任务是流程中需要完成的事情,线程是用于处理或执行它们的资源。什么是任务?它是java类吗?在java的核心API中没有作为任务的东西。你能具体说明一下你指的是什么吗?我想大概是在yes中讨论过的。我的理解是,他们在那里做同样的工作,是正确的还是错误的?谢谢uthank u。我明白了你的意思。我还有一个问题,比如:我读了org.apache.nutch.parse.ParseUtil.runParser(Parser p,Content-Content)的源代码。这两个方法调用是否执行相同的操作:指令1:t.interrupt();说明2:任务。取消(true);请把它作为一个单独的问题发布托马斯:他。。。一小时前。