pthreads相关内容

pthread 线程状态

是否有一种机制可以用来判断 pthread 线程当前是否正在运行或已退出?如果线程尚未退出,pthread_join() 是否有方法可以在特定时间段后超时? 解决方案 我刚刚将线程包装在 C++ 类中,并保留了一个状态变量,以便稍后检查. ..
发布时间:2021-06-23 18:34:52 C/C++开发

我无法在窗口平台中使用 pthread

我的环境是 Windows8.1(64 位)并使用 Visual Studio 2010. 我确实把所有 *.dll 文件放在 system32 、SYSWOW64 中(因为我使用的是 win8 64 位.) 和链接位置,用于 x64 系统和 VC 2010 的 *.lib 文件. 当然,我添加了额外的文件夹 lib forders.. ,包括文件夹.. 等.. 但是当我尝 ..
发布时间:2021-06-23 18:34:48 其他开发

用于 PHP 的 pthreads 不在 Apache 中执行并行线程

我正在使用 PHP 的 pthreads 扩展.当我在 Windows 上从 cmd 执行 PHP 脚本时,我得到了并行线程,但是当我从 Apache 调用相同的脚本时,我得到了不同的结果,在我看来就像单线程执行一样. 是否应该为 Apache 进行任何配置以获得像 cmd(并行)这样的响应? class AsyncOperation 扩展线程 {公共函数 __construct($arg ..
发布时间:2021-06-23 18:34:45 PHP

pthreads-win32 在各种 Windows 编译器上的可移植性

我正在使用 pthreads-win32 来为 Windows 提供线程支持. 我有一个使用 pthread 的跨平台项目,我想让它在具有各种编译器和不同操作系统版本的 Windows 上工作. 至少,根据文档 pthreads-win32 应该与 MSVC 一起工作,甚至提供 MSVC 版本. 但我不知道该库是否使用最新的 MSVC 编译器(如 MSVC-2008 和如果在 6 ..
发布时间:2021-06-23 18:34:42 其他开发

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

我需要帮助来完整安装 PHP7 (ZTS) + Pthreads.我尝试了以下安装,但无法正常工作. sudo -iapt-get 更新apt-get install -y git bison autoconf build-essential pkg-config gitcore libltdl-dev libbz2-dev libxml2-dev libxslt1-dev libssl-dev ..
发布时间:2021-06-23 18:34:39 PHP

thread_fork 在内核上工作

我在 OS161 上工作,主要不支持 C pthread 库.我目前的目标是了解系统调用并运行一些简单的程序. 我的简单函数有以下代码: int id = 1; long id2 = 1; int ret = thread_fork("myThread", (void *)id, id2, void (*function)((void *)id, id2), NULL); ..
发布时间:2021-06-23 18:34:36 其他开发

php pthreads 不会在 xampp 7.0.2 上启动

我已经安装了新的 xampp (7.0.2 atm).我已经创建了 php-cli.ini,在那里添加了 pthread 扩展并将内存限制设置为 3 GB.但是当我尝试启动线程脚本时,我得到了这个: PHP 致命错误:Uncaught RuntimeException: cannot start my_thread, out of resoC:\xampp\htdocs\w\start_thre ..
发布时间:2021-06-23 18:34:33 PHP

pthread 创建无法正常工作

我有这段代码: #include #include #include #include 整数;pthread_mutex_t *mutex;pthread_t *线程;void *PrintHello(void *threadid){好久不见;tid = (long)threadid;printf("Hello World!是我,线程#%ld!\n", tid);time_t 原始时间;stru ..
发布时间:2021-06-23 18:34:28 其他开发

线程未按正确顺序打印

我对 C 中的线程相当陌生.对于这个程序,我需要声明一个线程,我将它传入一个 for 循环,该循环旨在从线程中打印出 printf. 我似乎无法按正确顺序打印.这是我的代码: #include #include #include #define NUM_THREADS 16void *thread(void *thread_id) {int id = *((int *) thread_id ..
发布时间:2021-06-23 18:34:25 其他开发

如何在Windows中使用MinGW的CLion中的C项目中使用pthread头文件

我正在尝试将 #include 包含在我使用 CLion 的项目中,但我不能直接使用它.有没有什么特定的方法可以将 pthread 包含到 C 项目中? 解决方案 我终于想出了一个解决方案.由于我使用的是 MinGW,因此我使用了 MinGW 安装管理器并安装了需要在 CLion 中执行 pthreads 和 openmp 相关任务的软件包.这是程序. 打开安 ..
发布时间:2021-06-23 18:34:22 其他开发

具有连接文件描述符的 pthread 竞争条件

我正在为学校作业实现一个简单的多线程 Web 服务器,并且遇到了一些与用于每个连接的连接文件描述符的同步问题.我最初的问题是,一个线程有时会关闭文件描述符 (conn_fd),因为另一个线程也在使用一个文件描述符.当另一个线程尝试 send() 或 recv() 时,这将导致错误的文件描述符错误. 我的解决方法是存储每个文件描述符最多 1000(我知道是任意数字和容易出错的)当前是否打开.如 ..
发布时间:2021-06-23 18:34:16 其他开发

创建多参数函数的pthread

如果我要为以下函数创建一个 pthread. 假设一切正常. pthread_create(&threadId, &attr, (void * (*)(void*))function,//这里的参数应该是什么??);int a = 0;int b = 1;//c 和 d 是全局变量.无效函数(int a,int b){c = 一个;d = b;} 解决方案 这不起作用.function ..
发布时间:2021-06-23 18:34:13 其他开发

对 pthread_create 的未定义引用

我有这个代码: #include #include 空* cuoco(空* arg){fprintf(stderr,"Inizio codice cuoco\n");fprintf(stderr,"Fine codice cuoco\n");返回空;}void*cameriere(void*arg){fprintf(stderr,"Inizio codicecameriere\n");fprin ..
发布时间:2021-06-23 18:34:11 其他开发

C 定时器和线程再次

有人可以帮助我用一个函数来完成我的代码,该函数可以检查计时器“check_timer"的结果,另一个函数可以在“reset_timer"过期时重置这个计时器? #include #include #include #include #include #include #include #include #define GLOBAL_TIMER 8 * 60 * 60typedef struct ..
发布时间:2021-06-23 18:34:08 其他开发

void * 类型化函数参数

我有一个函数,void *Client(void *threaData){} 你能告诉我一些关于 void *threadData 参数的事情吗?当您使用 void * 参数时,为什么? 解决方案 void * 是一个可以指向任何对象类型的通用指针.上面的函数可以接受一个指向任何类型的指针,并且可以返回一个指向任何类型的指针. 如果不确定用户输入的数据的数据类型,可以使用通用指 ..
发布时间:2021-06-23 18:34:04 其他开发

如何在windows上设置pthreads?

我在 这里 上找到了 pthreads 的实现,但我找不到正确工作.有人可以帮我安装 pthreads 吗?喜欢把 DLL、.lib 和 .h 文件放在哪里? 此外,作为环境,我没有使用 Visual Studio,而是使用带有 Mingw 的代码块. 我通常在 Linux 上开发,但这个项目必须在 Windows 上,而且我已经使用 pthreads 实现了一些代码,所以我不想使用来 ..
发布时间:2021-06-23 18:34:01 其他开发

Pthread:为什么人们要费心使用 pthread_exit?

据我所知,当您需要终止具有返回值的线程时,pthread_exit() 完全等于 return.当人们可以使用一致的方式,即返回来完成工作时,为什么 Pthread 定义了这样一个重复的接口? 解决方案 我想到的两个原因:pthread_exit 允许您从调用堆栈中的任何深度退出线程. 如果 TLS 密钥必须在主线程上调用对于主线程来说,调用它们的自由函数. 还有这里:“任何已 ..
发布时间:2021-06-23 18:33:58 其他开发

当另一个线程修改同一数组的另一个元素时,修改数组的一个元素是定义明确的行为吗?

给定一个 foo_t[n] 类型的数组和一组 n 个线程,其中每个 n 个线程读取和修改一个数组的不同元素,我是否需要显式同步数组的修改,还是可以假设同时修改数组的成员是明确定义的行为?foo_t 有多大/它有什么对齐方式有关系吗? 解决方案 我尝试做的是明确定义的行为. 参见 ISO/IEC 9899:2011 §5.1.2.4.27: 注意 13 编译器转换将分配引入到抽象 ..
发布时间:2021-06-23 18:33:55 其他开发

获取进程中使用 pthread_created 创建的所有 thread_id

如果有任何“智能"方式来获取进程内使用 pthread_created 创建的所有 threadID ,则使用 pthreads,假设这些线程是在第三方库中创建的不会暴露这些数据. 解决方案 一种方法是为 pthread_create 创建一个替换函数,并使用 LD_PRELOAD.当然你不想重新实现 pthread_create,所以你必须以某种方式调用 pthread_create,但 ..
发布时间:2021-06-23 18:33:51 其他开发

pthread_cond_timedwait()

void wait(int timeInMs){struct timespec timeToWait;timeToWait.tv_sec = 5;timeToWait.tv_nsec = timeInMs*1000;国际贸易;pthread_mutex_lock(&fakeMutex);rt = pthread_cond_timedwait(&fakeCond, &fakeMutex, &time ..
发布时间:2021-06-23 18:33:45 其他开发