問題タブ [sos]
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.
version-control - SOSを使用すると、ブランチ内のすべてのファイルを1回の操作でトランクにマージできますか?
特定のブランチ内のすべての最新ファイルをトランクにマージするようにSOSに指示する方法はありますか?
変更されるすべてのファイルをチェックアウトしました。最新のブランチリビジョンを選択し、[リビジョン]-> [マージ]メニューコマンドを使用して、単一のファイルをマージできます。ただし、複数のファイルを選択すると、オプションがグレー表示されます。マージするファイルがかなりありますが、可能な限り手動でこれを実行したくありません...
visual-studio - SOSデバッグ拡張機能を効果的に使用するにはどうすればよいですか?
VisualStudioのイミディエイトウィンドウで.loadSOSを使用し、出力の長いリストを生成するコマンド(たとえば、!dumpheap -type System.String -min 100)を誤って発行した場合、イミディエイトウィンドウは値の一覧表示を停止できません。何時間もスクロールし続けます。私にできることは、プロセスを強制終了してデバッグを再開することだけです。これは非常に迷惑です。即時ウィンドウでこのリストをキャンセルする方法や、SOSデバッグ拡張機能をより適切に使用するためのその他のヒントを知っていますか?
.net - !gcrootの使用方法
SOSデバッグ拡張機能がロードされたVisualStudioイミディエイトウィンドウ内から実行できます
それから私はこのようなものを手に入れます:
System.Byte []インスタンスの一部で!gcrootを呼び出すにはどうすればよいですか?私は最初に彼らの住所を見つけなければならないでしょう。しかし、!dumpheap -type System.Byte []を使用すると、無限のリストが得られ、すぐに表示されるウィンドウが遅いように見えるため、リストするのに20分以上かかるため、確かに悪い考えです。使用可能。一部のバイト配列で!gcrootを呼び出す方法はありますか?
.net - WinDbgでネイティブオブジェクトを歩く方法は?
アプリで多くのメモリを占有しているものを調査しています。!DumpObj コマンドを使用して、管理対象オブジェクトを回避できます。しかし、ネイティブ オブジェクトに対して同等のことを行うにはどうすればよいでしょうか。たとえば、次の .NET オブジェクトにはネイティブ コードへのポインターがあります。ここで立ち往生しています...ここから!DumpObjと同等のことを行うにはどうすればよいですか? 私はすべてのソースとシンボルを持っています。
.net - これらの WCF 関連のリソースがクリーンアップされないのはなぜですか?
これが私のシナリオです:
- テスト プログラムを開始し、すぐにデバッガー (WinDBG) に割り込む
- !DumpHeap -stat を取得し、System.Net* または System.Xml* オブジェクトがどこにもないことを確認します
- WCF クライアントを作成し、WCF 要求を行う
- WCF クライアントを閉じて、GC を強制します。
- !DumpHeap -stat を取得すると、オブザーバーには大量の System.Net*、System.Xml* オブジェクトがまだメモリ内にあります。
したがって、ステップ 5 での観察から、WCF が適切にクリーンアップされていないように見えます (または、何かが不足している可能性が高い)。どうしてこれなの?ここにあってはならないこれらのオブジェクトによって消費されたメモリを取り戻すにはどうすればよいですか?
これが私のテストコードです...
PSここに私の! FinalizeQueueの結果があります...これが関連しているかどうかはわかりません
なくなったはずのランダムオブジェクトの !GCRoot トレースを追加しています...
windbg - windbgの使用方法はSqlConnection.ConnectionStringを見つけますか?
「!do」を使用してSqlConnectionインスタンスをダンプできますが、そのConnectionStringを見つける方法がわかりません。
.net - WinDbg SOS 例外スタックの関数アドレスの横にある +0x10 は何を意味しますか?
例:
InnerException: StackTrace (生成): SP IP 関数 003D8E9C 03B21BD7 何か!Blah.Blah.FunctionName(System.String) +0xa8
+0xa8 の部分は何を示していますか?
windbg - データアクセスDLL、0x80004005の読み込みに失敗しました
corflags.exe / 32bit + xxxx.exeを64ビットサーバー2003で実行すると、通常xxxx.exeがクラッシュします。このダンプを取得しました。同じマシンにwindbg(x86)をインストールしましたが、SOSを使用できません。この問題をグーグルで検索しましたが、仕事の答えが見つかりません。同じマシンを使用していますが、windbgが必要なものを見つけられないのはなぜですか?
visual-studio-2008 - デバッグ中にオブジェクトを参照しているものを確認できますか?
Silverlight アプリのデバッグ中に、オブジェクトへの現在の参照をすべて表示することはできますか?
WPF 開発者が SOS.dll を使用できることは知っていますが、Silverlight アプリのデバッグ中に VS2008 IDE にロードすることはできません。試してみましたが、load コマンドでエラーが表示されます。
.load C:\Program Files\Microsoft Silverlight\3.0.40818.0\sos.dll
管理のみのデバッグ中は SOS を使用できません。SOS を読み込むには、プロジェクト プロパティでアンマネージ デバッグを有効にします。
残念ながら、VS2008 IDE を介して Silverlight アプリのアンマネージ デバッグを有効にする方法はありません。また、プロセスに「アタッチ」しようとしましたが、それでもサイコロはありません。
visual-studio - !DumpHeap(.load sos)を使用して最初のオブジェクトアドレスのみをダンプする方法
私は数百万のオブジェクトがメモリにぶら下がっています。それらのgcrootを見つけたいので、オブジェクトアドレスが必要です。!DumpHeapは、待機するのに我慢できたよりも時間がかかっているすべてのオブジェクトをダンプします。出力を1つのオブジェクトアドレスのみに制限するにはどうすればよいですか?VisualStudio2008を使用しています。