不分享,做一切!
php拥有令人敬畏的且数量庞大的扩展跟特征,但是php当初设计这门语言的时候,是因为那个时候的web网站远远没有今天的强大!现在几乎所有的网站(含手机站)服务器都是多核的,如果不是多CPU跟多核,PHP是无法提供更好的服务的。虽然PHP正在非常迅速的展示及表达你的想法,但是当我们想要通过成熟的语言或者框架,建设更加完善的网页应用(网站)或者是数据库驱动的应用,因为PHP不能够让我们更好的支配硬件服务器。所以比较尴尬!但是多线程让PHP创建更完善【牛叉】的应用成为可能,这个特征是的你的个人网站能够做到一些以前不能够做到的事情!
基础
pthreads 扩展是一个专有的API,它可以让用户在PHP语言里面使用多线程。它包含了你创建多线程应用的全部工具,当然无论是web、还是控制台程序。
PHP程序可以创建、读取、写入及同步线程操作,含如下类型:Threads、Workers、Stackables【翻译者注释:V2 以上的版本 同 Threaded】。
Thread对象
用户可以通过继承Thread类来使用线程,当然这个类是通过pthreads拓展实现的。任何成员【函数/代码段/继承者】都可以通过引入线程类来读取及重写这个线程类的方法。任何继承于线程的程序,都可以执行任何的公开的及受保护的线程程序。当我们在程序中调用线程类里面的start方法的时候,线程类【继承线程类的子类】中的run方法将会作为一个独立的线程被执行。只有当上下文程序创建一个线程,并且开启start方法及join方法的时候。【翻译者注释:如果使用join 就是等待上一个线程结束,然后执行下一个线程,官方给的说明是同步】