函数'usleep'的隐式声明

时间:2015-03-31 14:17:58

标签: c warnings usleep

所以我一直在寻找有关usleep()的内容,而我发现的所有内容都是#define,我已经做过了......有什么建议吗?我需要摆脱这个警告...或任何有关如何使用睡眠与毫秒的想法。

#define _BSB_SOURCE
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <unistd.h>
#include <time.h>

int r = rand() % 1000 +1;
usleep(r*1000);        
pthread_mutex_lock (&count_mutex);

2 个答案:

答案 0 :(得分:4)

您需要从编译器命令中删除-std=c99,或在使用_XOPEN_SOURCE之前使用unistd.h宏。

如果您愿意,可以使用-std=gnu99代替-std=c99

答案 1 :(得分:1)

nanosleep()为我工作:

  

相关说明:usleep()自POSIX-2008和   建议改用nanosleep()。