呼び出し履歴

著者: Lewis Jackson
作成日: 8 5月 2021
更新日: 25 六月 2024
Anonim
あなたの携帯ハッキングされているかも!?それを知る15の方法
ビデオ: あなたの携帯ハッキングされているかも!?それを知る15の方法

コンテンツ

定義-呼び出しスタックとはどういう意味ですか?

C#の呼び出しスタックは、プログラムの開始から現在のステートメントの実行まで実行時に呼び出されるメソッドの名前のリストです。


呼び出しスタックは、主に、アクティブな各サブルーチンが実行を終了したときに制御を返すポイントを追跡することを目的としています。呼び出しスタックは、トレース対象のメソッドを複数のconで呼び出すことができる場合に、アプリケーションをデバッグするツールとして機能します。これは、特定のメソッドを呼び出すすべてのメソッドにトレースコードを追加するよりも優れた代替手段となります。ユーザーコードのどこかに例外がスローされると、共通言語ランタイム(CLR)が呼び出しスタックを巻き戻し、キャッチブロックを検索して特定の例外の種類を判断します。適切なハンドラーがない場合、CLRはアプリケーションを終了します。したがって、呼び出しスタックは、実行ポインタに次に進むべき場所を伝えるために使用されます。

Microsoft AzureとMicrosoft Cloudの紹介|このガイドでは、クラウドコンピューティングとは何か、Microsoft Azureを使用してクラウドからビジネスを移行および実行する方法を学習します。

Techopediaはコールスタックについて説明します

呼び出しスタックは、「スタック」として整理されます。これは、後入れ先出し方式で項目を格納するためのメモリ内のデータ構造です。そのため、サブルーチンの呼び出し元は、終了後に戻りアドレスをスタックと呼び出し先サブルーチンにプッシュします。呼び出しスタックから戻りアドレスをポップして、そのアドレスに制御を移します。

C#では、すべてのアプリケーションは「メイン」メソッドで始まり、そのメソッドが他のメソッドを呼び出します。メソッドを呼び出すたびに、メソッドはスタックの一番上に追加され、呼び出し元に戻るときにスタックから削除されます。また、ブロックで宣言された変数のスコープは、その値が(呼び出しスタックの一部として)スタックにプッシュされてから、変数と呼び出しスタックがスタックからポップされるときに実行がブロックを離れるまで決定されます。したがって、スタックはローカル変数(値型)と呼び出しスタック(スタックフレーム)の両方を保持します。そのサイズはプログラムの複雑さを示します。


この定義はC#のconで書かれています