0
有沒有關於printf()的內建東西,可以讓你用單獨的線程和使用cout/cerr來進行有序的屏幕I/O?我正在尋找東西這將讓我做同步屏幕輸出使用cout/cerr和pthreads。到目前爲止空白;可能不得不在週末想出點什麼。同步屏幕I/O和pthread&C++
有沒有關於printf()的內建東西,可以讓你用單獨的線程和使用cout/cerr來進行有序的屏幕I/O?我正在尋找東西這將讓我做同步屏幕輸出使用cout/cerr和pthreads。到目前爲止空白;可能不得不在週末想出點什麼。同步屏幕I/O和pthread&C++
這個包裝將如何工作?我假設你想從一個線程的多個打印連續出現...但包裝如何知道這些「組」開始和停止?
由於您必須對如何描繪這些「打印羣」進行描述,爲什麼不使用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);
}
我想這會工作,如果不是有點笨拙。這給了我一個想法,雖然...順便說一句,printf()工作正常。我想用cout&cerr。當你在輸出流上使用<<運算符的時候,那些分解。 –
如何處理只輸出,從管道讀取的線程。而其他線程「發佈」到管道,而不是輸出? – AntonH