求php阻塞函数

WBOY
Lepaskan: 2016-06-27 13:18:11
asal
994 orang telah melayarinya

有这样一个需求,a.php执行完成后不能结束,需要阻塞在那里。然后b.php和外部通信并且将外部来的数据传到阻塞中的a.php。
然后最好不要用socket的在网络上的阻塞。


回复讨论(解决方案)

建议别这么做,你在a.php用个参数进行识别,例如:
先访问a.php?type=0;
再访问b.php;
最后访问a.php?type=1;

你的需求是不可能实现的!


你的需求是不可能实现的!

求助版主。。为什么这个需求没法实现?

版主说的对啊,a既然阻塞了,又如何执行接收的动作呢?
a只能做监听的动作,而不是阻塞

版主说的对啊,a既然阻塞了,又如何执行接收的动作呢?
a只能做监听的动作,而不是阻塞

好吧。可能本来没有说太清楚。就是那种处于监听状态的阻塞么

在 http 会话中,php 是作为 http 服务器的工作程序出现的。
如果 php 被挂起,那么 http 服务器因没有得到返回,而不会终止本轮会话
由于 http 协议是无状态协议,所以会话不能重入。(想插话,但不知道在哪里插)

我猜测你打算做服务器推。
由于这种应用与浏览器密切相关,所以目前 php 尚未支持(当然有些服务器端语言已开始支持了)
可以见到的此类 php 应用,是需要用 socket 做服务器的。而你又不愿意那样做

在 http 会话中,php 是作为 http 服务器的工作程序出现的。
如果 php 被挂起,那么 http 服务器因没有得到返回,而不会终止本轮会话
由于 http 协议是无状态协议,所以会话不能重入。(想插话,但不知道在哪里插)

我猜测你打算做服务器推。
由于这种应用与浏览器密切相关,所以目前 php 尚未支持(当然有些服务器端语言已开始支持了)
可以……

那弱弱地问下版主。如果用pcntl或是popen来做进程间通信和阻塞不是也是可能做到的么?
只是pcntl在web上貌似有些不稳定。popen感觉又权限太高,有点危险。

那你是打算修改php内核还是修改apache的内核呢?
如果你具备这个能力,自然不在话下

那你是打算修改php内核还是修改apache的内核呢?
如果你具备这个能力,自然不在话下

貌似确实应该是也只有socket,多谢版主

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan