CMD .exe block until press Enter or keypress
透過Windows Server 的CMD 運行了後端程式 .exe來跑服務
卻容易因為一些因素(例如其他程序出錯、炸錯造成卡頓) 導致其他Terminal的Process連帶跟著卡住
此時,任何請求都不會產生回應
直到我再按下Enter 他才一次跑出一大串(一次出現剛剛卡住的所有內容)
解決辦法:
關閉快速編輯模式
點選正在運行的CMD的左上角 -> 內容
參見:
https://stackoverflow.com/questions/13599822/command-prompt-gets-stuck-and-continues-on-enter-key-press
什麼是快速編輯模式?
快速編輯模式(Windows Quick Edit Mode)是微軟的一項貼心功能,當滑鼠游標點擊CMD視窗的任何地方時,都會進入編輯模式,當前執行的程序都會暫停、被阻塞(block)
所以點擊視窗之後,伺服器的程序就會停止響應了
直到我重新按下鍵盤Enter或輸入任何字元,離開編輯模式,程序才會繼續執行
一些程式語言會提供 ENABLE_QUICK_EDIT_MODE 的方法,用以關閉此程序的快速編輯模式
參見:
https://learn.microsoft.com/zh-tw/windows/console/setconsolemode
沒有留言:
張貼留言