c - 线程 : when Dynamic mutex initialization must be used

标签 c initialization pthreads

众所周知,初始化pthread mutex有两种方式(C语言)

  1. 静态初始化:

    pthread_mutex_t mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
    
  2. 动态初始化:

    pthread_mutexattr_t attr;
    pthread_mutex_t mutex;
    pthread_mutexattr_init(&attr);
    pthread_mutexattr_settype(&attr, PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP); 
    pthread_mutex_init(&mutex, &attr);
    

var 1 - 我用了很多次。

var 2 - 我发布这个问题的原因: 当必须使用 pthread mutex 的动态初始化时,如果有人能为我提供一些真实的例子,我将非常感激。

谢谢!

最佳答案

如果默认属性不适用/不合适,您总是需要 pthread_*_init() 函数。

An example can be found at the bottom of this page .

关于c - 线程 : when Dynamic mutex initialization must be used,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48472713/

相关文章:

使用标准输入的 C-fgets() 不起作用

c - Gstreamer 中的图片幻灯片

c - 跨线程拆分文本文件

选择 pthread 中的打印顺序

c - 使用 pthread 创建多个线程时出现问题

c - 这个例子是如何工作的? (书中的gets函数示例)

c - C 中的空字节和数组

c - 初始化数组时 VS2010 中的“初始化”错误

java - 什么是 Java 中静态字段的初始值设定项

c++ - 选择哪种设计来进行复杂的对象初始化?