Ios 函数的隐式声明';pthread_mutex_init';在C99中无效
我试图用本文中的mutec锁定一个方法,它声明创建类的成员变量Ios 函数的隐式声明';pthread_mutex_init';在C99中无效,ios,objective-c,multithreading,Ios,Objective C,Multithreading,我试图用本文中的mutec锁定一个方法,它声明创建类的成员变量 pthread_mutex_t mutex; 然后初始化它 pthread_mutex_init(&mutex, NULL); void MyLockingFunction() { pthread_mutex_lock(&mutex); // Do work. pthread_mutex_unlock(&mutex); } 那么就这样使用它吧 pthread_mutex_in
pthread_mutex_t mutex;
然后初始化它
pthread_mutex_init(&mutex, NULL);
void MyLockingFunction()
{
pthread_mutex_lock(&mutex);
// Do work.
pthread_mutex_unlock(&mutex);
}
那么就这样使用它吧
pthread_mutex_init(&mutex, NULL);
void MyLockingFunction()
{
pthread_mutex_lock(&mutex);
// Do work.
pthread_mutex_unlock(&mutex);
}
当我初始化它时,我在步骤2得到以下警告
Implicit declaration of function 'pthread_mutex_init' is invalid in C99
这是什么意思?我应该忽略它吗?这意味着您没有包含声明函数的头文件,因此编译器在您使用它时对它一无所知。您试图通过使用它来隐式声明它,这是无效的 如果选中,它会告诉您应该使用以下行导入声明:
#include <pthread.h>
#包括
如果将其放在源文件顶部附近,警告将消失