草庐IT

Tread多线程

全部标签

php - PHP Intl 扩展线程安全吗?

我一直在阅读有关PHP语言环境的文章,似乎setlocale()有线程问题。(我对线程不太熟悉——文档提到它不是线程安全的)我想让我的项目能够处理某些数字格式,而且Intl扩展似乎很有趣。http://php.net/manual/en/book.intl.php我是否应该预料到setlocale()使用Intl扩展时会出现同样的问题? 最佳答案 好吧,我自己也对此很好奇,所以我设计了一个测试。首先我用这两个文件测试了setlocale():和然后我在两个单独的选项卡中执行它们。首先是locale1.php,它会在设置语言环境后休眠

PHP 线程 ( pthreads ) 正在工作,但没有任何 Stackable 类

最近几天我将PHP线程(pthreads)与PHP7.0.1(在配置中使用–enable-maintainer-zts)一起使用,并且在使用Thread或Worker时一切正常。当我尝试为Worker创建一个继承自Stackable的类时,我得到了“fatalerror:未找到类‘Stackable’”。通过get_declared_classes()我意识到对于线程我只有Threaded、Volatile、Thread、Worker和Pool类。我以为是pthreads版本的问题(最新的是3.1.15)但是卸载了再安装回3.0.0还是出现了同样的错误。此外,PHP手册(英文)也没有提

php - Laravel 中的多线程

我遇到了一个问题,我的数据库调用显着减慢了页面加载速度。我正在从选举数据中填充多个图表,我的表包含大约100万行,我必须在getCharts()方法内的每个方法中多次查询此数据。我是usingthis将返回数据传递给JavaScript。当您单击数据点时,这些图表会重新填充。因此,如果您单击一个点,即('democrat),它将重新加载页面并再次调用这些方法。我想问的是是否可以在nativePHP中执行类似的操作。服务器在linode上运行PHP5.2。foreach(functioningetChartsMethod){Startachildthreadtoprocessthefun

php - 为什么PHP不支持多线程?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我到处都读到PHP不支持多线程,但有解决方法。但是为什么PHP不支持多线程呢?对于服务器端脚本语言,这似乎是一个明显的遗漏。

php - 可以使用 Cron 作业来模拟 PHP 的多线程吗?

我有一个mysql数据库表,其中包含1000多条记录,比如说5000条记录。每条记录都有一个processedbool标志,默认为false(0)。我想做的是每分钟在cron上运行一个PHP脚本。它的代码是这样的:db->query($sql);if(!$result->has_rows())die;$id=$result->getSingle('id');processItem($id);//Willsetprocessedto1afterprocessingisdoneprocess();}?>应该很清楚上面的代码做了什么,它获取下一条未处理的记录的id,处理它,然后再次调用pro

php - Symfony2 中的多线程

我这里有点情况。我正在使用symfony2和facebookSDK为我的iPhone和Android应用程序设置Web服务。问题是后台工作可能需要相当长的时间。用户首先被重定向到facebook登录页面,在那里他可以通过接受我的facebook应用程序权限来继续。因此,与其等待我的服务完成后台工作,不如立即通知用户一切正常。服务应该在后台继续工作,用户应该不会意识到这一点。这是Controller操作的相关部分:publicfunctionpersistPostsAction(){...if($this->CheckUser($user_id)==0){/*Thisfunctionsh

php - 如何在php中跨线程共享全局变量?

在多线程中,全局变量或资源在线程之间共享。我在c中使用pthread库#include#include#includevoid*worker(void*);intctr=0;pthread_mutex_tlock;intmain(intargc,char*argv[]){pthread_tt[2];inti=0;//~pthread_mutex_init(&lock,NULL);while(i此代码输出:job1startedjob2startedjob2finishedjob2finished在这段代码中,变量ctr在线程之间共享,因此其他线程对该变量所做的更改对另一个线程可见(除非

【Java面试宝典】线程安全问题|线程死锁的出现|线程安全的集合类

CSDN话题挑战赛第2期参赛话题:面试宝典文章目录  前言1、多线程概述1.1、线程的由来1.2、多线程特点2、线程安全问题2.1、互斥锁2.1.1、同步代码块2.1.2、同步方法2.2.3、两种同步思路的区别2.2、死锁2.2.1、线程通信2.2.2、sleep和wait的区别?3、线程安全的集合类  前言  线程安全在面试中是考官比较青睐的考点,那我就从多线程的组成特点上开始,分析线程安全问题、死锁出现与解决的方法以及线程安全的集合类总结。希望可以帮助大家理清有关知识点,直面考官,收割offer!1、多线程概述1.1、线程的由来概念线程是进程中并发执行的多个任务,进程是操作系统中并发执行的

php - 如何在php中使用多线程

我现在正在开发一个关于在Internet上共享视频的网站。流程如下:用户上传视频->服务器端收到视频并使用ffmpeg将视频格式转换为flv->用户继续在网站上做其他事情。现在我想建立另一个线程来完成转换工作(使用ffmpeg将视频格式转换为flv),这样用户就可以在不等待视频转换为flv的情况下做其他事情。但不知道怎么做! 最佳答案 PHP不支持线程。您应该使用由cron脚本运行的后台任务来执行此操作。您可以有一个包含要处理的作业的表,例如,包含磁盘上的文件名、状态(待处理、正在转换、就绪)等,然后让脚本获取所有待处理的作业,更改

php - 在非线程环境中使用线程安全扩展 (APC) 有什么危害吗? (PHP)

我打算用这个SimplePHPUploadwithaProgressBar,它说我需要APC扩展。我有两个APC选项,线程安全的和非线程安全的。使用phpinfo,我发现启用了线程安全,但我不确定php是否真的以多线程方式运行。我听说php仍然是多线程的测试版。无论如何,如果我的PHP不是多线程的并且不是“线程安全的”,使用APC的线程安全版本会有问题吗?tl;dr版本:线程安全的APC是否意味着更高的兼容性(适用于php单线程/多线程),还是意味着需要多线程(仅适用于php多线程)? 最佳答案 ifmyPHPisnotmutith