当我们使用线程时,它在C#中是作为并行进程工作还是作为串行进程工作?

当我们使用线程时,它在C#中是作为并行进程工作还是作为串行进程工作?,c#,asp.net,C#,Asp.net,当我们使用线程时,它在C#?中是作为并行进程还是串行进程工作?如果有多个处理器或内核,它们很可能会并行运行。否则,它们将以伪并行方式运行,这意味着它们将按顺序但不确定地运行。您已将此标记为asp.net问题,因此我相信您需要提供更多有关您尝试执行的操作的信息。在ASP.NET中,每个请求都在单独的线程上处理,因此它已经是多线程的。只有在真正需要并行执行长时间运行的任务时,才应该创建自己的线程。多线程更常用于winforms应用程序中,以确保GUI在运行计算或检索/发送数据等时仍能响应用户 也就是

当我们使用线程时,它在C#?

中是作为并行进程还是串行进程工作?如果有多个处理器或内核,它们很可能会并行运行。否则,它们将以伪并行方式运行,这意味着它们将按顺序但不确定地运行。

您已将此标记为asp.net问题,因此我相信您需要提供更多有关您尝试执行的操作的信息。在ASP.NET中,每个请求都在单独的线程上处理,因此它已经是多线程的。只有在真正需要并行执行长时间运行的任务时,才应该创建自己的线程。多线程更常用于winforms应用程序中,以确保GUI在运行计算或检索/发送数据等时仍能响应用户


也就是说,在ASP.NET中肯定会有使用新线程的时候,因此请提供更多详细信息。

当您需要调用2个或多个Web服务或查询以形成ASP.NET页面请求时,您可以(应该)使用线程并行执行它们。所花费的总时间将是最长操作的时间,而不是所有任务的总时间。

如果在代码中使用线程,则操作系统将为这些线程分配处理时间

如果您的系统只有一个处理器,那么每个线程将分配少量的处理时间(这就是“关键部分”的作用,因为它将防止操作系统暂停该部分中的线程)


如果您的系统有多个处理器,那么每个线程都可以在单独的处理器上运行。理论上,如果系统每个线程有一个处理器,那么它们将在与最长线程相等的时间范围内执行。实际上情况并非如此,因为在给定的系统上通常有许多线程运行。

您能用简单的英语书写吗?请定义:什么是并行或串行进程?线程在windows系统中定义良好。