如何在相互依赖的C文件中定义pthread和互斥锁?

皮皮

我是pthread和互斥锁的新手。我以前使用过它们,但是在一个文件中使用(创建线程和锁的main.c与使用锁的函数和内存在同一个文件中)。如何在相互依赖的C文件中定义互斥锁?理想情况下,我希望不更改当前结构。

main.c   // create threads, include `file1.h`
file1.h  
file1.c  // include `file1.h` and `lib.h`, extern a memory defined in `lib.c`
lib.h  
lib.c   // include `lib.h`, contain functions that malloc and dealloc memory, which need to be accessed by many threads  

您需要在以下.c文件之一中定义互斥量

pthread_mutex_t mux;

然后您需要在其中一个.h文件中进行前向声明

extern pthread_mutex_t mux;

通常的约定是,将前向声明放入与该.h文件相对应的.c文件中,但是没有理由不能将其放入另一个.h文件中。您只需要记住.h要包括的内容即可。确保包括.h定义了变量文件以及在任何地方使用文件的文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在F#中定义两个相互依赖的类型?

来自分类Dev

如何在F#中定义两个相互依赖的类型?

来自分类Dev

如何在Excel中创建相互依赖的列?

来自分类Dev

如何在Rails中构建相互依赖的表单?

来自分类Dev

如何在makefile中添加相互依赖的库

来自分类Dev

如何定义相互依赖的类?

来自分类Dev

如何定义相互依赖的类?

来自分类Dev

如何在C中为多线程使用互斥锁?

来自分类Dev

如何在包含相互依赖的javascript文件的项目中有效使用jshint?

来自分类Dev

如何在包含相互依赖的javascript文件的项目中有效使用jshint?

来自分类Dev

C和pthread:如何将互斥锁引用到特定变量?

来自分类Dev

C ++中pthread互斥锁的销毁和取消初始化顺序

来自分类Dev

相互依赖的头文件和类/方法无法编译

来自分类Dev

如何在猫鼬中构建各种相互依赖的模式或如何正确使用“引用”?

来自分类Dev

C ++相互依赖的类

来自分类Dev

如何在ReactJS中使表单输入相互依赖

来自分类Dev

互斥锁与C ++ 11中的pthread兼容吗?

来自分类Dev

在标准ML中声明相互依赖的值和函数

来自分类Dev

C#和.NET版本是否相互依赖?

来自分类Dev

如何打印在 C++ 中相互依赖的枚举中的值的名称

来自分类Dev

在MS Visual C ++中如何管理项目相互依赖性?

来自分类Dev

带有pthread和互斥锁的OpenCV

来自分类Dev

如何正确处置pthread互斥锁?

来自分类Dev

pthread 互斥锁中的意外行为

来自分类Dev

在C中使用互斥锁同步pthread

来自分类Dev

在C中使用互斥锁同步pthread

来自分类Dev

相互依赖的类和继承

来自分类Dev

如何简化相互依赖的绑定?

来自分类Dev

如何实例化相互依赖的类?

Related 相关文章

热门标签

归档