php socket数据等待,php卡死
程序员文章站
2022-05-30 21:10:00
...
有一个服务器程序。多线程的。用php通过socket 进行连接。服务器的收发数据是同步收发。线程池的。
现在的问题是。当我用php 连接服务器程序后。需要等待一段时间。数据才能返回。
这个时候。php无法解析 了。服务器程序可以正常处理socket请求,但,整个php 停掉了,必须等到这个数据返回。完成数据接收后。才能继续解析php文件。
有什么办法可以让php不用全部都停下来等到这个数据返回。
现在的问题是。当我用php 连接服务器程序后。需要等待一段时间。数据才能返回。
这个时候。php无法解析 了。服务器程序可以正常处理socket请求,但,整个php 停掉了,必须等到这个数据返回。完成数据接收后。才能继续解析php文件。
有什么办法可以让php不用全部都停下来等到这个数据返回。
回复讨论(解决方案)
既然是同步收发,那当然要等待完成啦
如果是web程序的话,用ajax,异步调用这个 php socket程序,来防止页面终止。
如果是CLI程序的话,加上php的libevent扩展或者多线程扩展pthreads
现在不是当前页面停止了。而是。。整个php都停止。。。直到接收完数据。。php才能继续解析。
同步当然要等待,除非你用异步。
推荐阅读
-
php操作mysql(数据库常规操作)
-
php连接Access数据库的三种方法_PHP教程
-
php网mysql数据库插入数据乱码问题?
-
php socket通过SMTP发送邮件
-
请问下PHP操作数据库的写法上的小疑点
-
PHP导入excel数据到MYSQL,php导入excelmysql_PHP教程
-
PHP $_GET 获取 HTML表单(Form) 或url数据_PHP教程
-
php win下Socket方式发邮件类
-
redis/分布式文件存储系统/数据库 存储session,解决负载均衡集群中session不一致问题,redissession_PHP教程
-
php将数据库导出成excel的方法_PHP教程