LINUX多线程编程语言
如何使用Linux多线程?
具体来说,要使用多线程,首先定义一个线程函数,用于在线程中运行。然后在需要新线程的地方调用pthread_create。
一是执行比较耗时的计算。这时,在取得了数据等所需***后,创建一个新线程,进行计算,计算完成后,线程自然退出。
二是虽然单个计算不耗时,但需要频繁计算。这时,数据可能还没有准备好,但可以先创建一个线程,等待数据,一旦数据准备好,就开始计算,计算完成后,并不退出,而是等待下一组数据。通常会配合信号量一起使用。
Linux下php程序使用多线程,有没有这样的可能?
引言
别的语言都在一窝蜂地搞编译,搞虚拟机,搞多线程,提高效率。我们整天敲 PHP 代码,除了 Nginx 调用 php-fpm 拉取 PHP 文件的解析外,对于多线程有多少了解?
这个问题的答案是肯定的,PHP 可以使用多线程。我们借助于 pthreads 实现:
该项目提供了与基于Posix Threads的PHP兼容的多线程。
有啥亮点没?下面这些全是:
需要一些扩展的基础的支持,PHP 7.2 及以上版本,ZTS Enabled ( Thread Safety ),Posix Threads Implementation。
还有一些注意事项:
pthreads是一个面向对象的API,它提供了PHP中多线程所需的所有工具。 PHP应用程序可以创建,读取,写入,执行并与线程,***对象和线程对象同步。 警告:pthreads扩展名不能在Web服务器环境中使用。 因此,PHP中的线程应仅保留给基于CLI的应用程序使用。
命令行应用脚本完全适用,这也与我们编写 Bash,Python等等类似。下面举一个例子:
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/13933.html