Linux

後台程序的好處

  • April 12, 2020

後台程序是否有不同的好處?我注意到它沒有預設的 0。這可能是一個問題,因為它的優先級較低。有誰知道如何改變這種行為?我通過下面的啟動腳本執行java,並且在該腳本中沒有nice呼叫。

nohup ./start.sh &

F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
0 S  5330  12759      1  0  84   4 -  3283 -      ?        00:00:00 start.sh
0 S  5330  12772  12759  1  84   4 - 1462473 -    ?        00:19:12 java

執行此腳本的使用者在後台從互動式kshshell 會話中啟動它。

kshshell 有一個名為 的 shell 選項,bgnice預設情況下ksh93是打開的,這會導致 shell 以非零的 niceness 值啟動後台作業(它將比啟動作業的 shell 高 4)。

這是來自ksh93手冊:

bgnice 所有後台作業都以較低的優先級執行。這是預設模式。

要關閉此選項,請使用

set +o bgnice

kshshell 的某些變體中(例如pdksh可能還有 mksh),該選項仍然可用,但預設情況下設置。

引用自:https://unix.stackexchange.com/questions/579667