関連する質問では、ProcessBuilderを使用して、OSに依存するコマンドを使用して優先度の低い外部プロセスを開始する方法を検討しました。また、親プロセスの優先度が低い場合、生成されたすべてのプロセスが低い優先度で開始されることも発見しました。したがって、私の新しい質問は、Javaファイル(Windowsで実行可能jarをダブルクリックして実行)を低優先度で開始するか、実行中にプログラムで優先度を変更することです。スレッドの優先度を変更しようとしましたが、これはWindowsプロセスの優先度には影響しません。
次のことを試しましたが、タスクマネージャーのプロセスの優先度は変更されません
public class hello{
public hello(){
try{
Thread.currentThread().setPriority(1);
Thread.sleep(10000);
}catch(Exception e){e.printStackTrace();}
}
}
私が考えることができる他の唯一のことは、バッチファイルを使用してプログラムを実行することですが、いわば家族でこれを維持したいと思います。では、現在のプロセスの優先順位を変更するJavaベースの方法を知っている人はいますか?理想的には、プログラムの実行中にユーザー入力に応じてプロセスの優先度を変更できると便利です。