草庐IT

pthread_detach

全部标签

c++ - 一个类中的pthread

大家好,考虑到下面的代码(用g++-lpthreadthread_test.cpp编译),我如何从“thread_function”中知道我在第几线程?如果您有任何其他建议,请告诉我。谢谢!thread_test.cpp:#include#include#include#includeclassA{public:A();voidrun();private:staticvoid*thread_function(void*ptr);pthread_tm_thread1,m_thread2;staticintm_global;};intA::m_global=0;A::A(){intret1

c++ - pthreads:触发其他线程的线程

您好,我是多线程编程的新手。我正在尝试创建一个代码来创建一个线程THREAD1,在它完成某些操作后,它会触发另外两个线程,比如THREAD2和THREAD3,然后退出。我写了两个可能的解决方案。1)条件变量的使用(不起作用:在某些情况下我遇到了死锁):pthread_mutex_tready_mutex=PTHREAD_MUTEX_INITIALIZER;pthread_cond_tready_cond=PTHREAD_COND_INITIALIZER;boolready=false;void*trigger(void*);void*func1(void*);void*func2(vo

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 - 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服务器并