我创建一个线程
Thread newThread= new Thread(DoSomeWork);
.
.
.
private void DoSomeWork()
{
}
这与工作线程有什么不同吗?如果它是..哪个更好,我应该什么时候使用工作线程? 我的应用程序需要有很多线程进行监视、刷新......
最佳答案
我试图以一种简单的方式解释这个概念,希望它有助于更好地理解工作线程的概念。
一般定义:-
“工作线程”只是一个线程,它根据老板(我们可以称之为“客户端”)的命令执行一些后台工作,并将工作结果更新给客户端。
技术定义:-
工作线程通常定义为根据客户端请求激活的线程。
示例 1:
1- 我们有一家披萨店,那里有 10 位专家,他们是准备美味披萨的专家。这些被称为“工作线程”。
2- 我们有一个人负责接收客户的订单。那个人被称为“客户”。每当收到新订单时,其中一个“工作线程”就会开始准备比萨饼,并在比萨饼准备好后向客户端更新。
3- 当订单少于 10 个时,一些 worker 就会闲着。
4-当订单超过10个时,订单才进入等待队列。
示例 2:
1- 有一个监听 8080 端口的应用服务器。
2- 一个请求从端口 8080 进入。
3- 监听器线程(称为“客户端”)接收该请求并将其分派(dispatch)给完成请求的“工作线程”。应用服务器上实际上维护着一个“工作线程”池(“工作线程”程序的许多对象)。
4- 如果同时有两个请求进来,则分配两个工作线程,同时执行任务。
关于c# - 什么是工作线程及其与我创建的线程的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1524249/