gpt4 book ai didi

initialization - pthread_mutex_t 初始化错误

转载 作者:行者123 更新时间:2023-12-03 15:10:14 26 4
gpt4 key购买 nike

我在老虎上使用 xcode 2.4.1。当我在下面做的时候一切正常。当我做

pthread_mutex_t mute;
ImageMan()
{
dibSize=0;
mute = PTHREAD_MUTEX_INITIALIZER;
}

我收到这两个错误
error: expected primary-expression before '{' token
error: expected `;' before '{' token

我不知道为什么。但是,如果我执行 pthread_mutex_t mute = PTHREAD_MUTEX_INITIALIZER;它工作正常。为什么?

-编辑-
我还没有运行它,但这似乎可以编译。为什么?嗯?
    pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
mute = mutex;

最佳答案

PTHREAD_MUTEX_INITIALIZER是一个常量初始化器,仅在初始化时有效。它是一个不一定扩展为整数类型的宏。

您的 mute=mutex;无效 - 相反,您应该使用:

pthread_mutex_init(&mute, NULL);

或者如果您正在动态分配互斥锁:
m = malloc(sizeof(pthread_mutex_t)));
pthread_mutex_init(m, NULL);

关于initialization - pthread_mutex_t 初始化错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/383293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com