Linux:最大メモリを消費し、std :: threadを使用してそれを消去するプロセスを検出するにはどうすればよいですか?私はC + +コーディングに新しいので、関数を実装するためのC + +コードの説明は高く評価されるだろう。 割り当ての正確なテキストは、デバイスのメモリ使用量を監視するC++コードを記述することです。デバイスは、最大限のメモリ使用量で到達したデバイスを認識する必要があります。スレッドはこの状態を検出すると、より多くのメモリを使用しているプロセスを識別し、次のアクションを実行することができます。アプリケーション優先順位リストに対してプロセスをチェックします。プロセスの優先度が低いカテゴリの場合は、プロセスを停止して再起動します。それ以外の場合は、識別されたプロセスのためにメモリオーバーランが発生したことをユーザーに通知し、ユーザーの確認に基づいて再起動します。再起動はデバイスの再起動またはプロセスの再起動で、これはこの状態に起因するプロセスの性質に基づいて決定されます。・詳細はログファイルに記録されます。Linux:最大のメモリを消費し、それを殺すプロセスを検出するには?
-2
A
答えて
0
Linux OOM (Out-of-memory) killerを参照してください。
このリンクから:
他のすべてが失敗したときにシステムのメモリを解放するために、1つ以上のプロセスを犠牲にするLinuxのOOMキラー "の仕事です。
技術的には、何もする必要はありません。 ;-)
しかし、犠牲者プロセスの選択と削除のための独自の基準に従って自分自身で書きたい場合は、Linuxサービス(バックグラウンドで常時実行される)を作成することができます。サンプルコードはリンクされた記事にあります。
std::thread
については、既に実行可能ファイルがあり、これを行う専用のスレッドを生成したい場合は、それも可能です。ロジックは単にそのスレッドに移動します。
関連する問題
- 1. プロセスのメモリ消費を測定するLinuxのメカニズムf
- 2. Java PrintWriterの大きなメモリを消費
- 3. rabbitpyメッセージループは大量のメモリを消費するようです
- 4. Webワーカーは大量のメモリを消費します
- 5. 何がLinuxでメモリを消費するのですか
- 6. クロニクルキューで消費される最大メモリを制御できますか?
- 7. Linuxカーネルはプロセスが100%のメモリを消費することを許可していますか?
- 8. 表示プロセスでCPU時間を消費するメモリ
- 9. 外部プロセスがJava CPUを大量に消費する
- 10. 大きなデータセットのメモリ消費
- 11. 同一のImageButtonが大量のメモリを消費する
- 12. マシン/プロセス間でカフカの消費者を拡大する
- 13. boost :: async_write大きなファイルとメモリ消費
- 14. 巨大なメモリ消費(文字列)
- 15. HSQLDBメモリ消費
- 16. メモリ消費UCanAccess
- 17. JavaFX - メモリ消費
- 18. xlsxwriterが多すぎるメモリを消費し、プロセスが終了する
- 19. 最小限のメモリ消費でResuse ArrayList
- 20. ドッカーコンテナが大量のメモリを消費しているのはなぜですか?
- 21. アプリケーションのメモリ消費を最適化するWindows Mobile 6
- 22. Sparkのマップタスクで大量のメモリが消費される
- 23. macOS:setNeedsDisplayInRectによるメモリ消費
- 24. タイマーコントロールのメモリ消費
- 25. EFのメモリ消費
- 26. iPhoneのメモリ消費
- 27. PHPはプロセスのPIDを取得し、それを殺す
- 28. 大量のメモリを消費した後にPHPスクリプトがハングアップする
- 29. -Xmxは、最大メモリが消費されるまで自動GCを停止しますか?
- 30. mysqlメモリ消費を理解する
'のstd :: thread'は、プロセスをkillない、スレッドを生成することになっています。 –
あなたが試したことを示してください。だから、作者があなたの問題を解決するのに興味のある主人公であることを感謝します。その後、提案や可能な解決策をお手伝いします。あなたが初心者の方は、より簡単なアプリケーションを探すことをお勧めします。 – eyllanesc
私が意味することは、メモリモニタリングのプロセスがバックグラウンドで行われるべきだから、std :: threadを使用する必要があります。実装される機能は、RAMを致命的な程度まで消費し、それを殺すプロセスを検出することです。 – Linuxknowledgeseeker