相关疑难解决方法(0)

睡眠毫秒

我知道POSIX sleep(x)函数使程序休眠x秒.是否有一个函数使程序在C++中休眠x 毫秒

c++ linux sleep

577
推荐指数
12
解决办法
121万
查看次数

在C到毫秒内是否有替代睡眠功能?

我有一些在Windows上编译的源代码.我正在将其转换为在Red Hat Linux上运行.

源代码包含<windows.h>头文件,程序员使用该Sleep()函数等待一段时间.这不适用于Linux.

但是,我可以使用该sleep(seconds)函数,但在几秒钟内使用整数.我不想将毫秒转换为秒.有没有替代睡眠功能,我可以在Linux上使用gcc编译?

c linux sleep

120
推荐指数
5
解决办法
27万
查看次数

以微秒为单位获取C的时间戳?

如何在C中获得微秒时间戳?

我正在尝试:

struct timeval tv;
gettimeofday(&tv,NULL);
return tv.tv_usec;
Run Code Online (Sandbox Code Playgroud)

但是这会返回一些无意义的值,如果我得到两个时间戳,第二个可以比第一个更小或更大(第二个应该总是更大).是否可以将gettimeofday返回的魔术整数转换为可以实际使用的正常数字?

c time

41
推荐指数
5
解决办法
12万
查看次数

-D_DEFAULT_SOURCE做什么?

从以前我收到了警告,gcc -std=c99usleep()是隐式声明.然后我偶然发现了这个stackoverflow帖子,这让我使用了-D_BSD_SOURCE.但是,现在gcc告诉我-D_BSD_SOURCE已经弃用了,我应该使用-D_DEFAULT_SOURCE.

#warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
Run Code Online (Sandbox Code Playgroud)

为什么-D_BSD_SOURCE弃用?为什么-D_DEFAULT_SOURCE用呢?它做了什么?

我做了一些谷歌搜索,结果只是让人们用它来闭嘴gcc.我无法找到为什么 -D_BSD_SOURCE被弃用,只是它已经被弃用了.

c linux bsd gcc gnu

21
推荐指数
2
解决办法
7811
查看次数

如何睡几微秒

请考虑以下代码:

#include <stdio.h>
#include <time.h>
#include <math.h>

// Compile with gcc -lrt -lm -o test_clock test_clock.c

#define CLOCK CLOCK_MONOTONIC

int main(int argc, char** argv) {
    double temp, elapsed;
    int j;
    struct timespec requestStart, requestEnd, req;

    // Pseudo-sleep
    clock_gettime(CLOCK, &requestStart);
    temp = 0;
    for(j=0; j < 40; j++)
        temp += sin(j);
    clock_gettime(CLOCK, &requestEnd);
    elapsed = ( requestEnd.tv_sec - requestStart.tv_sec ) / 1e-6
                 + ( requestEnd.tv_nsec - requestStart.tv_nsec ) / 1e3;
    printf("Elapsed: %lf us\n", elapsed);

    // Nanosleep
    clock_gettime(CLOCK, &requestStart);
    req.tv_nsec = 5000; …
Run Code Online (Sandbox Code Playgroud)

c linux glibc real-time libc

7
推荐指数
2
解决办法
3万
查看次数

C、使用“usleep”函数时编译错误

我使用 Ubuntu Linux。当我尝试使用“usleep”函数时,我得到有关“函数 usleep 的隐式声明”的信息。下面是错误代码:

\n\n
muteks.c:70:4: warning: implicit declaration of function \xe2\x80\x98usleep\xe2\x80\x99 [-Wimplicit-function-declaration]\n    usleep(300);\n    ^\n
Run Code Online (Sandbox Code Playgroud)\n\n

源代码:

\n\n
#include <stdlib.h>\n#include <stdio.h>\n#include <time.h>\n#include <pthread.h>\n\nvoid * klientWatek (void* arg);\npthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;\nstatic int lKf = 10;\nint lKl = 15;\n\nint main ()\n{\n        pthread_t *klientTab;\n        int *klientTabId;\n        int lKr = 1;\n        int i;\n        // pami\xc4\x99\xc4\x87 dla identyfikatora w\xc4\x85tku\n        klientTab = (pthread_t *) malloc (lKl* sizeof (pthread_t));\n        klientTabId = (int *) malloc (lKl*sizeof (int)); //pami\xc4\x99\xc4\x87 dla id\n        // b\xc4\x99d\xc4\x85cego argumentem przekazywanym do  funkcji\n        for …
Run Code Online (Sandbox Code Playgroud)

c ubuntu

1
推荐指数
1
解决办法
4072
查看次数

标签 统计

c ×5

linux ×4

sleep ×2

bsd ×1

c++ ×1

gcc ×1

glibc ×1

gnu ×1

libc ×1

real-time ×1

time ×1

ubuntu ×1