pthreads 相关问题

Pthreads(POSIX Threads)是一个标准化的基于C的API,用于创建和操作线程。它目前由POSIX.1-2008(IEEE Std 1003.1,2013 Edition / The Open Group Base Specifications Issue 7)定义。

等待子线程的信号量

我正在阅读一些考试代码,它是这样的: sem_t s; int main(int argc ,char *argv[]) { thread_t p1、p2、p3; sem_init(&s,X,X) thread_create(&p1,子级);

回答 1 投票 0

C 语言键盘监听器,无需在终端中输入

我想在后台终端中无限期地运行程序,直到用户按下某个组合键(在任何时间点,而不仅仅是在终端提示符处)。 我目前的想法计划(

回答 1 投票 0

pthread 互斥锁无法正常工作

我有一段代码,我使用 pthread_mutex_t 来保护关键部分,但它不起作用,当一个线程锁定互斥锁时,另一个线程如何访问关键部分...

回答 1 投票 0

核心转储文件名使用 core_pattern %e.%p.core 获取线程名称而不是可执行文件名称

我最近开始使用 pthread_setname_np() 在我的应用程序中设置一些线程名称。执行此操作后,如果指定线程之一内发生崩溃,则核心转储文件名是 gett...

回答 3 投票 0

在 pthread_create 和 pthread_detach 之后立即取消 pthread_cancel 时出现未知故障

我已经测试了线程取消过程,并且有这样的代码。 它在我的 ARM 机器上运行,有时运行良好,有时会导致段错误,有时在创建后卡住。 #包括...

回答 2 投票 0

Linux tgkill(),真的可以看到两个tid相同的线程吗?

在 Ubuntu Linux 20.04.4(Linux 内核 5.13)上,man tgkill 说: int tgkill(int tgid, int tid, int sig); tgkill() 将信号 sig 发送到具有线程 ID 的线程 tid在线程组tgid中。 ...

回答 1 投票 0

C:为什么调用 pthread_cond_signal 会挂起?

我有以下代码片段。请注意,我有多个生产者和只有一个消费者。 pthread_mutex_t 互斥体; pthread_cond_t 简历; // 生产者线程 if (pthread_mutex_lock(&mutex) != 0) { ...

回答 1 投票 0

pthread 使用 pthread_cleanup_push 清理 int/array/struct 类型变量

这可能是一个转储问题,但我对多线程编程不熟悉,并且用谷歌搜索了很多,但找不到有用的信息。假设我有一个线程的启动函数,这...

回答 1 投票 0

std::exception_ptr 可以包含 __cxxabi::__forced_unwind 吗?

在 GNU/Linux 上,pthread_cancel 是通过 __cxxabi::__forced_unwind 类型的特殊异常实现的,因此当取消线程时,会引发异常并展开堆栈。因此,一...

回答 1 投票 0

如何高效且线程安全地实现单例? [重复]

单例类的通常模式是这样的 静态 Foo &getInst() { 静态 Foo *inst = NULL; if(inst == NULL) inst = new Foo(...); 返回*安装; } 然而,这是我的

回答 9 投票 0

linux环境下pthread中的线程取消

我执行了以下示例代码: #包括 #包括 #包括 #包括 #包括 静态无效* thread_func(无效*

回答 1 投票 0

运行ASAN时malloc_trim(0)中的分段错误

代码1.c: #包括 #包括 #包括 #包括 void* 线程函数(void* arg) { char* ptr = (char *)malloc(10); 公关...

回答 1 投票 0

pthread_cond_wait()和pthread_cond_signal()的理解

一般来说,pthread_cond_wait() 和 pthread_cond_signal() 的调用如下: //线程1: pthread_mutex_lock(&mutex); pthread_cond_wait(&cond, &mutex); 做一点事()

回答 3 投票 0

pthread_key_create 析构函数没有被调用

根据 pthread_key_create 手册页,我们可以关联一个在线程关闭时调用的析构函数。我的问题是我注册的析构函数没有被调用。我的代码要点...

回答 7 投票 0

为什么 googletest 需要 -lpthread 选项?

我被告知执行 g++ test.cpp -lgtest -lpthread 来生成单元测试。 我想知道为什么 googletest 需要 -lpthread 库。因为我的代码不包含 pthread 中的任何内容

回答 1 投票 0

创建线程时设置CPU亲和性

我想创建一个 C++11 线程,希望它在我的第一个核心上运行。我发现 pthread_setaffinity_np 和 sched_setaffinity 可以更改线程的 CPU 亲和力并将其迁移到特定...

回答 5 投票 0

当我们计算可以使用 Pthreads 在 C 中创建的推荐线程数时,我们是否计算主线程?

我有一台可以运行的计算机,有 1 个 cpu、4 个核心、每个核心有 2 个线程。所以我最多可以运行 8 个线程来提高效率。 当我用 C 编写程序并使用 pthred_create 函数创建线程时...

回答 1 投票 0

共享内存的进程间同步如何使用CAS或pthread?

我想用这个结构来控制共享内存进程间同步。 结构体shmLock { std::atomic_uint32_t user_count; pthread_mutex_t 互斥体; }; 如果有人使用

回答 1 投票 0

使用 PThreads 的 C 生产者-消费者

我正在解决一个问题,我正在实现一个模仿生产者-消费者范式的程序。当我只有一个生产者和一个消费者时,我使用的代码可以工作,但它不会......

回答 1 投票 0

在 Linux 上的 C# .Net Core 6 中设置线程关联

我正在尝试将线程的线程关联性设置为 Ubuntu Linux 上的特定内核(使用 WSL)。 我编写了一个 C 程序来验证原则上它是否有效。 但我的 C# 程序以 segmen 结尾...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.