問題タブ [resource-cleanup]
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.
python - with-block が失敗した場合に with ステートメントで作成されたファイルを削除する方法 (python)
次のようなコードがあります。
これを実行すると、どこかにエラーがあっても、ファイルが作成され、不完全な状態になります。
with-block で例外が発生した (処理されていない) 場合は、ファイルを削除してください。これを行う最善の方法は何ですか?
私の理解では、(try ...)finally
ステートメントでそれを実行しようとすると、例外がなくても発生しますが、except
ステートメントの後に配置すると、例外はバブルアップし続けません。やりたいこと。(例外を処理したくありません。コードの実行が停止する前にファイルを削除するだけです。)
c++ - 終了時にクリーンアップするかどうか
クリーンアップは良いことだと理解しています。また、OS の内部構造も理解しているため、プロセスが終了することがわかっている場合は、そのメモリが解放されます。しかし、私は別の視点を提案するのが好きです。私は、終了時にメモリを解放するのはかなり悪い考えだと考えています。
たとえば、現在スワップアウトされている大きなメモリを割り当てた可能性があります。終了時に解放すると、RAM に移動してから解放する必要があります。そうしないと、終了時に1つのテーブルで空きとしてマークされます。
全体として、OS は大幅に変更されています (基本は同じままです)。 COMとして生の技術に取り組んでおり、大きく依存しています。私はVERY_CONTROLLED_ENVIRONMENTと呼びます。
For TL;DR
: 最新の OS では、終了時にクリーンアップを実行するべきではないと思います。私が間違っていると思うなら、なぜですか?
PS: 私は RTOS について話しているのではなく、制御された環境が Windows、Linux を意味することを意味し、デバイス ドライバーの開発や、さらに言えば OS の開発を意味するものではありませんでした。
javascript - Kineticjs はメモリ リークを引き起こします。ステージを破壊しても解放されない
シングル ページ アプリケーションは、新しい URL ルートの新しいステージを生成します。
大量のメモリ リークが発生しています。
グローバル変数である Kinetic.shapes と Kinetic.names は、stage.destroy() の呼び出し後でも決してクリアされないことに気付きました。
次の呼び出しでは問題は解決しません。
何か案は?ありがとう
python - __del__ は信頼できませんが、コンテキスト マネージャーを使用しようとするとオブジェクトが持続しません。
多数の子オブジェクトをインスタンス化するスクリプトがあります。スクリプト (およびこれらのオブジェクト) が終了すると、オブジェクトは少しクリーンアップする必要があります (特に一時ファイルのクローズと削除)。
私はどのよう__del__
に信頼できないかを読み続けていますが、コンテキスト管理は機能していないようで、子オブジェクトは持続しません。彼らはぶらぶらする必要があります(ファイルの読み取りや書き込みなどを行うため)
例:
ライター.PY
メイン.PY
しかし、私が実行するmyfunc()
と、オブジェクトは終了するとすぐにガベージコレクションされ__init__()
ます. これは enter から exit までまっすぐ進み、with ステートメントの後には何の役割も果たしません。オープンを に入れても に入れても問題ないよう__init__
です__enter__
。
出力:
このようにコンテキストマネージャーを使用する方法、より良い使用方法__del__
はありますか...またはこれを達成するための3番目のオプションはありますか?
powershell - ユーザーの介入なしにディスク クリーンアップ cleanmgr.exe のプロセスを自動化する
ユーザーの介入なしでディスクのクリーンアップを実行するpowershellスクリプトファイルを開発しています。ユーザーは何も設定できません。
実行cleanmgr.exe /d c: sageset:1
すると、クリーンアップするファイル/フォルダーを選択するためのポップアップ ウィンドウが表示されます (クリーンアップ オプション)。
これにより、クリーンアップ オプションを含む設定を含むレジストリ エントリが作成され、その後、cleanmgr.exe /sagerun:1
実際にクリーンアップを実行する実行が可能になります。
powerhell/コマンドラインを使用してクリーンアップオプションを直接指定する方法はありますか(削除するものを手動で選択する必要はありません)?