問題タブ [thread-priority]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - この Java アプレット チュートリアル コードのループで、スレッドの優先度が最大に設定されているのはなぜですか?
ゲーム用の基本的なJavaプログラミングを学ぼうとしています。
このチュートリアル hereに従っています。
アプレットの run メソッドのスケルトン コードは次のとおりです。
このコードでは、最初にスレッドの優先度を最小に設定しています。次に、ループ内で最大に設定します。
これの目的は何だろう?と思いました。
multithreading - カーネルスレッド(work_queues)よりもユーザースレッドに高い優先度を与える方法
特定のユーザースレッドがカーネルによってプリエンプションされてはならないアプリケーションを実行しています。セットアップについて説明します。OS:Linux2.6.32カーネル
カーネルレベル:1。カーネルに組み込まれているモジュールはたくさんあります。2.Work_queuesも一部のモジュールで初期化されます(work_queues用に個別のスレッドが作成されると思います)3。ハードウェア割り込みが発生した場合、isr中にこれらの初期化されたwork_queueのいずれかにこの作業をキューに入れます。
アプリケーションレベル:複数のスレッドが並行して実行されており、そのうちのいくつかは、処理中の他のスレッドよりも優先度が高くなっています。(カーネルでも)
目的:1。ハードウェア割り込みが発生すると、isrが自動的に呼び出され、work_queueのキューに入れられます。ただし、その間に優先度の高いユーザーレベルのスレッドが実行されている場合は、これらのwork_queuesをスケジュールする必要はありません。特定のユーザーレベルのスレッドは、kernelでのwork_queue処理によってプリエンプトされるべきではありません。今、カーネルが他のどのユーザースレッドよりも優先されることを確認しました。2.カーネルに複数のwork_queuesがあります。異なるワークキューに異なる優先度を与えるにはどうすればよいですか。カーネルにwork_queuesの優先度を設定するAPIを見たことがありません。
java - Javaで通知を待つ
子スレッドを優先しwait()
、notifyall()
メソッドが使用されるため、優先度に従って実行する必要があります。でも走らない。も使用する場合synchronized(target)
、優先度に従って実行されません。
c++ - 優先的にシステムコマンドを実行する方法はありますか?
私はこのコマンドを意味します:
たとえば、通常より低い優先度モードで実行する方法はありますか?
c - スレッドが独自のナイスを下げることを許可する最も移植性の高い (*nix の中で) 方法
完全な特権で実行せずに、プロセス/スレッドに独自のナイス値を下げる権利を付与する最良の方法は何ですか? ソリューションは、プロセス自体の外部にある可能性があります(ulimit
またはsetcap
たとえば)。
ulimit
少なくとも最新の Linux と Mac OS X で移植可能なものを探しています (これが、またはで自分自身に返信しなかった理由ですsetcap
)。
windows - スケジュールの優先順位、ウィンドウ
msdnに基づいて、windows osは基本プロパティに基づいてスレッドをスケジュールし、動的優先順位をブーストとして使用します
システムは、同じ優先順位を持つすべてのスレッドを同等として扱います。システムは、ラウンドロビン方式でタイムスライスを最も優先度の高いすべてのスレッドに割り当てます。これらのスレッドのいずれも実行する準備ができていない場合、システムはラウンドロビン方式でタイムスライスを次に高い優先度を持つすべてのスレッドに割り当てます。優先度の高いスレッドが実行可能になると、システムは優先度の低いスレッドの実行を停止し(タイムスライスの使用を終了させずに)、優先度の高いスレッドにフルタイムスライスを割り当てます。
上記の引用から
システムは、同じ優先度を持つすべてのスレッドを等しいものとして扱います
システムが動的優先順位に基づいてスレッドを処理することを意味しますか?また、基本優先順位は動的優先順位変更の下限として使用されますか?
ありがとうございました
java - Linux上で動作するJavaプログラムのnice値の設定
システムを圧倒しないように、Java プログラムの優先度をいくらか下げたいと考えています。私の最初の考えは使用することThread.currentThread().setPriority(5)
でしたが、それは単に JVM 内での優先事項のようです。
それから私はそれを握りつぶしてシステムコマンドを呼び出すかもしれないと思ったThread.getId()
が、単なるJVMのIDでもあるので、どのプロセスIDを渡すかさえわからないrenice
。
Java プログラムでこのようなことを行う方法はありますか?
mysql - 特定のクエリを優先する方法は?
場合によっては、複数のバックエンドプロセスが同時に実行されると(キュー管理は別のものであり、そのように解決できますが、これはここでは問題ではありません)、次のようになります。General error: 1205 Lock wait timeout exceeded; try restarting transaction ROLLING BACK
優先度の低いプロセスは、優先度の高いプロセスの数分前に開始されたため、テーブルをロックするプロセスです。
すでに実行中のプロセスよりもクエリを優先するにはどうすればよいですか?
それが十分に明確であったことを願っています。
c# - 負荷の高いタスクに低いスレッド優先度を設定する
まず、すべての返信に感謝します!
もっと具体的に言いたいのですが、現在および過去のレポートを表示する Web サイトがあります。Web サイトをナビゲートしながら、ユーザーがすべてまたは一部の履歴を削除できるようにしたいと考えています。
したがって、データの削除を処理する別のスレッドを実行したいのですが、このスレッドの優先度を低くして、Web サイトが遅くなったり応答しなくなったりしないようにします。
私は現在設計段階にあり、いくつかの戦略の提案をいただければ幸いです。ありがとう!
windows - parallel_for_each ループ内で Windows API の「SetThreadPriority」を使用することをお勧めしますか?
parallel_for_each を処理するスレッドのスレッド優先度を下げたいと考えています。これは、負荷が高い状況では、システム内の他のスレッドに比べてプロセッサ時間を消費しすぎるためです。
質問:
1) parallel_for_each のサービス スレッドは、呼び出しスレッドのスレッド優先度を継承しますか? この場合、おそらく、parallel_for_each の前後で SetThreadPriority を呼び出すことができ、すべて問題ないはずです。
2) または、parallel_for_each 内で SetThreadPriority を呼び出すことをお勧めしますか? これにより、同じスレッドに対して API が複数回呼び出されることは明らかです。これを行うには大きなオーバーヘッドがありますか?
2.b) これを行うと仮定すると、次に parallel_for_each が呼び出されたときにスレッドの優先度に影響しますか?つまり、後で各スレッドの優先度を何らかの方法でリセットする必要がありますか?
3) 一般的なスレッドの優先順位について疑問に思っています。コメントしたい人はいますか:単一のプロセッサをめぐって競合する2つのスレッドがあり、1つは「通常以下」に設定され、もう1つは「通常」の優先度であると仮定します。一方のスレッドは、他方のスレッドと比較して、およそ何パーセント多くのプロセッサ時間を取得できますか?