是否有关于printf()的内置内容可以让你使用单独的线程与使用cout / cerr进行顺序良好的屏幕I / O?我正在四处寻找 ,这将让我使用cout / cerr和pthreads同步屏幕输出。到目前为止空白;可能要在周末拿出一些东西。
答案 0 :(得分:1)
这个包装器如何工作?我假设你想要从一个线程到多个打印连续出现......但是包装器如何知道这些“组”何时开始和停止?
由于您必须如何描述这些“组”的印刷品,为什么不只使用pthread_mutex_t
?
void thread1(void) {
pthread_mutex_lock(&print_mutex);
printf("This ");
printf("is ");
printf("thread ");
printf("one.\n");
pthread_mutex_unlock(&print_mutex);
}
void thread2(void) {
pthread_mutex_lock(&print_mutex);
printf("This ");
printf("is ");
printf("thread ");
printf("two.\n");
pthread_mutex_unlock(&print_mutex);
}