php的异步非阻塞开发
来源:互联网 发布:excel筛选重复数据公式 编辑:程序博客网 时间:2024/06/01 08:11
同步、异步
阻塞、非阻塞
多进程、多线程(php是多进程单线程)
同步:在发出一个功能调用时,在没有得到结果之前,该调用就不返回,也就是必须一件一件事做,等前一件做完了才能做下一件事
异步:当一个异步过程调用发出后,调用者不能立刻得到结果,实际处理这个调用的请求在完成后,通过状态、通知和回调来通知调用者。
阻塞:指调用结果返回之前,当前线程会被挂起(线程进入非可执行状态,在这个状态下,cpu不会给线程分配时间片,即线程暂停运行)
非阻塞:在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回
php无法做到多线程,但可以实现多进程
同步请求中可实现阻塞或者非阻塞,异步调用亦如此;
在做任务调度,或者高并发处理时候,经常需要实现异步非阻塞情况,下面是php能实现的几种方式:
第一种:stream_socket_client
第二种:fsockopen
第三种:curl下的curl_multi_init方式
第四种:通过pcntl扩展,实现多进程之后各自进程实现异步非阻塞
第五种:通过消息队列和crontab定时任务实现异步非阻塞,比较常用
0 0
- php的异步非阻塞开发
- php 阻塞和非阻塞,同步与异步的理解,什么是异步非阻塞
- 异步非阻塞开发模式的优越性
- linux下串口的开发之非阻塞异步读
- Nginx的异步非阻塞
- 同步 异步 阻塞 非阻塞的区别
- io的同步/异步,阻塞/非阻塞
- 同步/异步、阻塞/非阻塞的理解
- 同步 异步 阻塞 非阻塞的区别
- 异步/同步、阻塞/非阻塞的理解
- 同步/异步、阻塞/非阻塞的理解
- 同步,异步,阻塞,非阻塞的理解
- linux的同步,异步,阻塞,非阻塞
- linux的同步,异步,阻塞,非阻塞
- 同步,异步,阻塞,非阻塞的区别
- 同步,异步,阻塞,非阻塞的区别
- IO的同步异步、阻塞非阻塞
- 阻塞非阻塞、同步异步的区别
- [读书笔记]Java类加载过程
- 怎样理解阻塞非阻塞与同步异步的区别?
- java线程的使用
- Android 混淆代码(eclipse篇)
- 说一说“\\n”和"\n"------第一次用到“\\n”这种串
- php的异步非阻塞开发
- php执行流程相关
- 【思想感悟】2015年终总结
- 【iOS】自定义TabBarController
- 使用杂记
- 算法分析——最大连续子序列和的问题
- php小分点
- json解析之gson解析
- [android]_[webView]