关于线程和并发的疑惑?

发布于 2022-09-11 23:08:24 字数 315 浏览 14 评论 0

这几天一直在学线程的知识。
但是我不理解线程是在什么时候产生的,是客户端请求一个服务端,此时服务端就会为这个客户端创建一个线程吗。

我的理解是这样的:

比如,张三李四两个人在各自的电脑访问一个web站点,此时服务器端就会为他们各自创建一个线程吗。这样服务器端是不是就有两个线程了(不考虑其它的情况下)。如果在某个时刻有很多人都在访问web站点,此时服务端是不是就会生成更多的线程呢?

然后根据线程执行的原理:需要获取到CPU的执行权才有资格执行程序这个特性,造成大量的线程高速的交替执行程序;最后出现了所谓的并发的情况吗?

不知道我这样理解对不对?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

何必那么矫情 2022-09-18 23:08:24
  1. 我觉得看servlet容器(如Tomcat)的实现和配置,tomcat是配置线程池,有最小线程维持数和最大线程数的设置。
  2. 过程:比如,我设置最小线程维持数:5,最大线程数:50,那么刚启动时,会初始化5个线程,接收到访问时,会从池子里面取一个线程来处理请求,如果访问数超过5个了,tomcat会创建更多的线程来处理请求,但最多不超过50个。
  3. 创建时机,有可能是第6个请求来了,就创建更多线程,也可能是现有的请求数超过多少占比时,就创建更多线程。
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文