首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP特有的“单线程进程”这个术语到底意味着什么?在这种情况下,请求是如何被阻塞的,以及为什么会被阻塞?

PHP特有的“单线程进程”这个术语到底意味着什么?在这种情况下,请求是如何被阻塞的,以及为什么会被阻塞?
EN

Stack Overflow用户
提问于 2022-10-07 19:57:35
回答 1查看 42关注 0票数 1

今天,我看到了来自PHP手册的以下声明

web服务器只运行一个单线程进程,因此如果请求被阻止,PHP应用程序将停止运行。

首先,在阅读并试图理解上述语句之后,我不理解单线程进程这个术语的实际和确切含义。

第二,我不明白这句话的第二部分

因此,如果请求被阻止,PHP应用程序将停止运行。

我不明白什么请求会在什么时候和如何被阻止?哪些PHP应用程序陷入停滞?

那么,有谁能给我解释一下上面整个语句的实际和准确的含义,并给出一个合适的例子呢?

EN

回答 1

Stack Overflow用户

发布于 2022-10-10 15:25:27

PHP的web服务器不能同时处理多个请求。它是单线程的,不像Apache或Nginx这样的额外进程。

假设您启动了web服务器,并且它会监听localhost:8080。编写以下代码是唯一的逻辑:

代码语言:javascript
运行
复制
<?php
sleep(5);
echo 'Hello world!';

然后在浏览器中打开两个选项卡,同时在两个选项卡中导航到localhost:8080。第一个选项卡在5秒后显示内容,而第二个选项卡被暂停,直到第一个选项卡完成,然后再用5秒来执行。这意味着第二个选项卡只显示10秒后的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73992081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档