我的情況是,我有一些數據將從兩個不同的線程打印。更新來自多個線程的命令行printf信息
但是,因爲這些數據僅僅是一個數量的不斷增加,我想用打印出來的一條線 「\ r」
但我不能找到一種方法,可以使這項工作,因爲它是兩個線程打印相同 線
總是,一個打印將覆蓋另一個,並且輸出變得混亂。
我想知道我的問題是否有解決方案。
我的情況是,我有一些數據將從兩個不同的線程打印。更新來自多個線程的命令行printf信息
但是,因爲這些數據僅僅是一個數量的不斷增加,我想用打印出來的一條線 「\ r」
但我不能找到一種方法,可以使這項工作,因爲它是兩個線程打印相同 線
總是,一個打印將覆蓋另一個,並且輸出變得混亂。
我想知道我的問題是否有解決方案。
您需要將printf
包裝在互斥體中,以便一次只有一個線程可以訪問它。這會阻止你的輸出被交錯。
終於有了一個解決方案, 我把每一件東西放在一個緩衝區中,而我只是打印緩衝區。