加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_梅州站长网 (https://www.0753zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php单线程和多线程的区别,php是单线程还是多线程

发布时间:2022-09-27 15:39:41 所属栏目:PHP教程 来源:
导读:  PHP 从设计之初到流行起来都没有出现明显需要用多线程才能解决的需求。

  
  某些需要用到多线程的地方也有相应的解决方案和替代方案。(推荐学习:PHP编程从入门到精通)

  多线程并不总是比单线程
  PHP 从设计之初到流行起来都没有出现明显需要用多线程才能解决的需求。
 
  
  某些需要用到多线程的地方也有相应的解决方案和替代方案。(推荐学习:PHP编程从入门到精通)
 
  多线程并不总是比单线程优,多线程可能会引入其他问题(例如:两个线程同时调用一个类里的同一个方法时,可能出现死锁的情况)。
 
  你可以这样理解对应一个客户的一个页面请求处理的php 是单线程处理的, 这样一来就可以自上而下的去编辑/理解代码中的业务逻辑了, 但是 php 可以同时开很多线程来处理 很多用户请求的同一个PHP , 所以 php 也可以看成是"多线程"的。
 
  每个PHP文件的执行是单线程的,但是,服务器(apache/nigix/php-fpm)是多线程的。每次对某个PHP文件的访问服务器都会创建一个新的进程/线程,用来执行对应的PHP文件。
 
  也就是说对于一个请求来说PHP是单线程的,但是多个请求间是并发的。
 
  其实一般写PHP程序认为是单线程的就可以了;多个请求之间相互的关系就是,有些时候读写数据库,文件,session等会加锁,会导致后面的请求挂起等待前面的请求执行完才继续。
 
  至于协程php单线程,只能说是一种新的程序执行流程(旧的是顺序,判断,循环),本质是也是单线程的
 
  所以准确的说php是单线程的,一定程度上也可以看成是“多线程”!!!
 

(编辑:云计算网_梅州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!