java多线程中任务与线程的关系
若以下回答无法解决问题,邀请你更新回答
1个回答
2018-07-03 · 国内最优秀java资源共享平台
关注
展开全部
1.任务(task)是最抽象的,是一个一般性的术语,指由软件完成的一个活动。
一个任务既可以是一个进程,也可以是一个线程。
简而言之,它指的是一系列共同达到某一目的的操作。
例如,读取数据并将数据放入内存中。这个任务可以作为一个进程来实现,也可以作为一个线程(或作为一个中断任务)来实现。
2.进程(process)常常被定义为程序的执行。
可以把一个进程看成是一个独立的程序,在内存中有其完备的数据空间和代码空间。
一个进程所拥有的数据和变量只属于它自己。
3.线程(tread)则是某一进程中一路单独运行的程序。
也就是说,线程存在于进程之中。
一个进程由一个或多个线程构成,各线程共享相同的代码和全局数据,但各有其自己的堆栈。
由于堆栈是每个线程一个,所以局部变量对每一线程来说是私有的。
由于所有线程共享同样的代码和全局数据,它们比进程更紧密,比单独的进程间更趋向于相互作用,线程间的相互作用更容易些,
因为它们本身就有某些供通信用的共享内存:进程的全局数据。
一个任务既可以是一个进程,也可以是一个线程。
简而言之,它指的是一系列共同达到某一目的的操作。
例如,读取数据并将数据放入内存中。这个任务可以作为一个进程来实现,也可以作为一个线程(或作为一个中断任务)来实现。
2.进程(process)常常被定义为程序的执行。
可以把一个进程看成是一个独立的程序,在内存中有其完备的数据空间和代码空间。
一个进程所拥有的数据和变量只属于它自己。
3.线程(tread)则是某一进程中一路单独运行的程序。
也就是说,线程存在于进程之中。
一个进程由一个或多个线程构成,各线程共享相同的代码和全局数据,但各有其自己的堆栈。
由于堆栈是每个线程一个,所以局部变量对每一线程来说是私有的。
由于所有线程共享同样的代码和全局数据,它们比进程更紧密,比单独的进程间更趋向于相互作用,线程间的相互作用更容易些,
因为它们本身就有某些供通信用的共享内存:进程的全局数据。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询