草庐IT

pthread_cond_broadcast

全部标签

c++ - 为什么 pthread_mutex_t 在尝试通过来自两个不同进程的共享内存进行锁定时会出现段错误?

我为打算在两个进程之间使用的pthread_mutex_t编写了一个super简单的包装器://basicversionjusttotestusingitbetweentwoprocessesstructMyLock{public:MyLock(){pthread_mutexattr_init(&attr);pthread_mutexattr_setpshared(&attr,PTHREAD_PROCESS_SHARED);pthread_mutexattr_settype(&attr,PTHREAD_MUTEX_ADAPTIVE_NP);pthread_mutex_init(&loc

c++ - pthread_create 没有参数?

我想创建一个没有函数参数的线程,但我一直收到严重困扰我的错误,因为我无法让一些super简单的东西正常工作这是我的代码:#include#include#include#include#includevoid*showart(NULL);intmain(intargc,char**argv){pthread_tthread1;pthread_create(&thread1,NULL,showart,NULL);getchar();return0;}void*showart(NULL){std::stringtext;std::ifstreamifs("ascii");while(!if

c++ - 如何让 cmake 使用 "-pthread"而不是 -lpthread”?

这是我的环境:操作系统:Ubuntu14.10海湾合作委员会:4.9cmake:2.8,3.1(都试过了)项目:muduo最近开始学习网络编程,下载muduo进行学习。虽然我在构建源代码时遇到问题,因为cmake会提示“找不到-lpthreads”。我做了一些研究。这主要是由于Ubuntu14.10下的gcc版本较新引起的。gcc-4.9将使用“-pthread”链接到pthread库,然而,旧版本的gcc使用“-lpthreads”。似乎cmake仍然使用“-lpthreads”,我不知道如何更正这个......错误日志如下:File/home/jack/workspace/gith

c++ - 带 pthreads 的后台线程

我正在使用pthreads创建一个后台线程来加载并在后台执行一些任务,但它有时会滞后应用程序,因为它的工作量很大。有什么方法可以设置较低的优先级或不同的调度(或两者的组合),以便主线程有更多的CPU时间运行? 最佳答案 这并没有逐字回答你的问题,但是在ConcurrencyProgrammingGuideApple建议远离线程并使用“DispatchQueues”或例如,OSX和iOS上异步操作的“操作队列”dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORIT

iPhone -Pthread 条件信号未解除阻塞等待线程

我有两个线程运行如下。该代码在iPhone模拟器上完美运行,但在设备上运行不佳。在iPhone(运行ios5.1)上,线程A发出条件信号,但线程B无限期地等待条件。在线程A中,当数据准备好被处理时:pthread_mutex_lock(&mutex);outstandingSig++;pthread_cond_signal(&condVar);pthread_mutex_unlock(&mutex);在线程B中:while(1){pthread_mutex_lock(&mutex);while(outstandingSig==0){pthread_cond_wait(&condVar,

php - 如何使用 Laravel Broadcasting 在一个线程中连接两个随机的人

我正在创建一个随机实时聊天,例如Omegle。我无法使用等待列表在私有(private)线程中连接两个随机的人。使用LaravelBroadcasting和LaravelJob最好的方法是什么?例如:Route::get('/start',function(){//addmetothewaitlist//waitforanotherperson//findanotherperson//removemeandanotherpersonfromthewaitlist//dispatcheventApp\Events\AnotherPersonFound::dispatch($another

php - 如何使用PHP//Thread//Mutex//Cond

PHP现在显然支持Thread类(class)。还有一个Mutex和Cond类(class)。尽管如此,还是需要用好的选项编译它并添加一个PECL扩展来拥有它。有从哪里开始的好教程吗?清楚地表明每个类/方法的合理使用的东西。我只是不知道如何处理这些类。我需要一些具体的例子来做非常简单的事情,并展示尽可能多的方法。谢谢。 最佳答案 它已经在pecl上发布,windows在github页面上下载...如果可以的话,git(源代码),更新的代码...http://pthreads.org包含更多信息,也可以查看示例文件夹...如果您对需要

php - PHP 的 pthreads 不在 Apache 中执行并行线程

我正在使用pthreadsPHP的扩展。当我在Windows上从cmd执行PHP脚本时,我得到了并行线程,但是当我从Apache调用相同的脚本时,我得到了不同的结果,在我看来它像是单线程执行。我应该为Apache进行任何配置以获得像cmd(并行)这样的响应吗?classAsyncOperationextendsThread{publicfunction__construct($arg){$this->arg=$arg;}publicfunctionrun(){if($this->arg){for($i=0;$iarg."\n";}}}}$thread=newAsyncOperation

php - 如何在 Ubuntu 14.04 上安装 php7 (zts) + pthreads

我需要帮助来完整安装PHP7(ZTS)+Pthreads。我已经尝试了以下安装,但无法正常工作。sudo-iapt-getupdateapt-getinstall-ygitbisonautoconfbuild-essentialpkg-configgitcorelibltdl-devlibbz2-devlibxml2-devlibxslt1-devlibssl-devlibicu-devlibpspell-devlibenchant-devlibmcrypt-devlibpng-devlibjpeg8-devlibfreetype6-devlibmysqlclient-devlibre

php - 无法在 Windows Xampp 上安装 pThread

更新:看起来我在这里没有做错任何事。当我执行一个线程示例时,它工作正常。我不确定,那为什么我在启动Apache时会收到这些错误。有什么想法吗?我正尝试在Xampp(Windows7)上安装pThread,如下所示:我的PHP版本信息:5.4.7VC9x86我已经下载了php_pthreads-0.0.45-5.4-ts-vc9-x86.zip然后我将pthreadVC2.dll添加到C:\xampp\php并将php_pthreads.dll添加到C:\xampp\php\ext在php.ini中,我添加了extension=php_pthreads.dll重新启动Apache服务器并