同时多个php请求,第二个请求直到第一个完成才完成

Posted

技术标签:

【中文标题】同时多个php请求,第二个请求直到第一个完成才完成【英文标题】:Multiple php requests simultaneously, second request doesn't finishe until first finishes 【发布时间】:2021-01-04 10:39:26 【问题描述】:

当我在 php 5.6 中使用 XAMP 服务器时

sleep(10) // 休眠10秒,调用其他本地的php文件,就可以正常工作了。

当我在 PHP 7.4.9 中使用 XAMP 服务器时

sleep(10) // 休眠 10 秒并调用其他 localhost 文件,它将挂起直到第一次完成

-- 我需要为请求更改 XAMP 配置的任何内容都不会等到第一次完成

【问题讨论】:

【参考方案1】:

文件1.php

<?php

session_start();
sleep(1);
echo "I am File2";

?>

文件2.php

<?php

session_start();
sleep(10);
echo "I am File2";

?>

先运行File2.php,再运行File1.php后还需要完成File2.php的运行过程

当你 session_start();在你不写会话之后,你必须使用 session_write_close(); 关闭会话;

文件1.php

<?php

session_start();
session_write_close();
sleep(1);
echo "I am File2";

?>

文件2.php

<?php

session_start();
session_write_close();
sleep(10);
echo "I am File2";

?>

现在你可以运行 File2.php,在 File1.php 之后你将首先执行 File1.php

【讨论】:

以上是关于同时多个php请求,第二个请求直到第一个完成才完成的主要内容,如果未能解决你的问题,请参考以下文章

让第二个 okHTTP 请求等待第一个完成 Android

jquery datepicker上的自定义动态验证直到第二个焦点才起作用

一走进多线程

利用curl 模拟多线程

Symfony不提供并发请求

来自浏览器的两个并行请求[重复]