小编IWi*_*l80的帖子

交流库中的线程安全说明

如果下面的代码是线程安全的,有人可以向我澄清一下吗?

int get_time(uint64_t *time)
{
    struct timespec spec;
    if (!time)
        return -EFAULT;
    if (clock_gettime(CLOCK_REALTIME, &spec) == -1)
        return -errno;
    *time = //convert timespec into nanoseconds
    return SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

这是一个可以由多个线程调用的库中的API.规范是一个局部变量,所以它不应该是一个问题.正确?我的疑问是关于clock_getime(POSIX.1-2001)和time参数的赋值.我想介绍一个互斥锁,但我不确定它是否是严格要求的.

c multithreading posix shared-libraries thread-safety

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