printf 、cout 輸出至控制檯阻塞

printf 以及cout 輸出到控制檯時,有機率會阻塞進程。切換到控制檯 敲回車 或者 按任意鍵後 信息纔會輸出到屏幕,代碼繼續往下執行。 有時 即使調用了fflush(stdout), 也依然會出現阻塞的情況。

在程序一開始調用 setvbuf(stdout, NULL, _IONBF, 0);【之前用 setbuf(stdout, NULL)】即不設置輸出緩衝區,輸出信息不存放在緩衝區中,而會直接輸出至控制檯。 

測試了一下,阻塞概率減小,但還是會有。目前沒有找到完全避免的方法,先這樣用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章