相关疑难解决方法(0)

Linux上的C中的stdout线程安全吗?

printf在Linux上使用线程安全写入stdout ?使用低级write命令怎么样?

c unix linux operating-system

39
推荐指数
5
解决办法
4万
查看次数

pthread_create并传递一个整数作为最后一个参数

我有以下功能:

void *foo(void *i) {
    int a = (int) i;
}

int main() {
    pthread_t thread;
    int i;
    pthread_create(&thread, 0, foo, (void *) i);
}
Run Code Online (Sandbox Code Playgroud)

在编译时,有一些关于强制转换((void *) iint a = (int) i)的错误.如何pthread_create正确传递整数作为最后一个参数?

c pthreads

34
推荐指数
4
解决办法
7万
查看次数

对“fprintf(stdout, ...)”和“fprintf(stderr, ...)”的调用都保证不与多个线程交错吗?

假设我有两个线程将某些内容(相对较长)打印到 或stderrstdout这两个流的函数是否都是线程安全的,因为它们永远不会“交错”字符?因此,例如,如果我有“Hello, World”,我将永远不会得到“HHellllo,, WorldWorld”或其他任何交错?适用于 x86、GCC、Linux > 3.0。

c linux concurrency multithreading multicore

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