C#では、main()メソッドが呼び出される前に、すべての静的変数が初期化されますか?

ルイ

私が特に懸念しているのは次のとおりです。

  • 外部DLLに含まれる、参照/依存クラスで定義されているクラスの静的変数。私の例では、そのサードパーティアセンブリのタイプは、プログラムの後半まで参照されません。(実行開始から5分としましょう)。

そのサードパーティアセンブリの静的変数は、その場合にのみロードされますか?

ありがとう、ルイ

カリム

言うC#仕様によると:

静的コンストラクターがクラスに存在する場合、静的フィールド初期化子の実行は、その静的コンストラクターを実行する直前に行われます。それ以外の場合、静的フィールド初期化子は、そのクラスの静的フィールドを最初に使用する前に、実装に依存する時間に実行されます。

静的コンストラクターをホワイトアウトすると、静的変数がいつ初期化されるかを正確に予測することはできませんが、最初に使用する前に初期化されることが保証されています。ただし、アセンブリを参照する前に初期化されていないことは確かです

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

C#静的メソッドの変数は、メソッドが呼び出されるたびに初期化されますか?

分類Dev

すべてのSpringコンテキストが初期化された後にBeanでメソッドを呼び出す方法はありますか

分類Dev

メソッドを呼び出す前に、Firebaseからのデータで配列が初期化されるのを待っています

分類Dev

Javaの静的変数とメソッドが直接呼び出されるのはなぜですか?

分類Dev

迅速。保存されているすべてのプロパティが初期化される前のメソッド呼び出しでの「self」の使用

分類Dev

C#でメソッドが呼び出されるたびに別のメソッドを呼び出す一般的な方法はありますか?

分類Dev

JUnit:グローバル変数の初期化内で呼び出される静的メソッドをモックすることは可能ですか?

分類Dev

jQuery UIから「UncaughtError:初期化前にダイアログでメソッドを呼び出せません。メソッド 'close'を呼び出そうとしました」というメッセージが表示されるのはなぜですか。

分類Dev

なぜ他の静的変数を返すメソッドの呼び出しによって初期化静的変数がnullのままでしょうか?

分類Dev

静的メソッドを使用する前に、静的変数が初期化されていることを確認しますか?

分類Dev

エラー:Firestoreはすでに初期化されています。settings()を呼び出すことができるのは、Firestoreオブジェクトの他のメソッドを呼び出す前に1回だけです。

分類Dev

オブジェクトが適切に初期化されていることを確認できるのはいつですか。たとえば、init()が他のメソッドの前に呼び出された場合などです。

分類Dev

オブジェクトは、そのメンバー関数を呼び出す前に初期化されることが保証されていますか?

分類Dev

静的クラス変数は、静的メンバー関数を最初に呼び出す前に初期化されていますか?

分類Dev

同期された非静的メソッド内で呼び出された場合、静的メソッドを同期化する必要がありますか?

分類Dev

Eloquentモデルでメソッドを呼び出すときに、「非静的メソッドを静的に呼び出すべきではない」というメッセージが表示されるのはなぜですか?

分類Dev

JasmineでAngularComponentメソッドを呼び出した後、初期値が変数に格納されます

分類Dev

サービス開始時にMain()メソッドが呼び出されるのはなぜですか?

分類Dev

コンストラクターが呼び出される前に静的メンバーが初期化されていますか?

分類Dev

コンストラクタが呼び出される前にインスタンス変数が初期化されるのはなぜですか?

分類Dev

Spring Controllers:各@RequestMappingメソッドが呼び出される前にメソッドを呼び出すことはできますか?

分類Dev

すべてのSpringBeansとApplicationContextが初期化された後のメソッドの呼び出し

分類Dev

スーパークラスで宣言された静的メソッドがサブクラスで呼び出されたときに、サブクラスの静的初期化子が呼び出されないのはなぜですか?

分類Dev

プライベート静的メンバーを初期化するときにプライベート静的メソッドを呼び出すことが許可されるのはなぜですか?

分類Dev

同じ変換ユニット内の静的メソッドで使用された場合、静的変数は初期化されることが保証されていますか?

分類Dev

オブジェクトが初期化されていない場合、静的メソッド/変数は実際にJavaで何を参照しますか?

分類Dev

Blazor:HTML onclickから呼び出されたJS関数からC#静的メソッドを呼び出す-JSがメソッドを見つけられないのはなぜですか?

分類Dev

静的メソッドが呼び出されたとき、CLRはどのように管理しますか?

分類Dev

関数が「静的初期化」ステップ中にのみ呼び出されるようにすることは可能ですか?

Related 関連記事

  1. 1

    C#静的メソッドの変数は、メソッドが呼び出されるたびに初期化されますか?

  2. 2

    すべてのSpringコンテキストが初期化された後にBeanでメソッドを呼び出す方法はありますか

  3. 3

    メソッドを呼び出す前に、Firebaseからのデータで配列が初期化されるのを待っています

  4. 4

    Javaの静的変数とメソッドが直接呼び出されるのはなぜですか?

  5. 5

    迅速。保存されているすべてのプロパティが初期化される前のメソッド呼び出しでの「self」の使用

  6. 6

    C#でメソッドが呼び出されるたびに別のメソッドを呼び出す一般的な方法はありますか?

  7. 7

    JUnit:グローバル変数の初期化内で呼び出される静的メソッドをモックすることは可能ですか?

  8. 8

    jQuery UIから「UncaughtError:初期化前にダイアログでメソッドを呼び出せません。メソッド 'close'を呼び出そうとしました」というメッセージが表示されるのはなぜですか。

  9. 9

    なぜ他の静的変数を返すメソッドの呼び出しによって初期化静的変数がnullのままでしょうか?

  10. 10

    静的メソッドを使用する前に、静的変数が初期化されていることを確認しますか?

  11. 11

    エラー:Firestoreはすでに初期化されています。settings()を呼び出すことができるのは、Firestoreオブジェクトの他のメソッドを呼び出す前に1回だけです。

  12. 12

    オブジェクトが適切に初期化されていることを確認できるのはいつですか。たとえば、init()が他のメソッドの前に呼び出された場合などです。

  13. 13

    オブジェクトは、そのメンバー関数を呼び出す前に初期化されることが保証されていますか?

  14. 14

    静的クラス変数は、静的メンバー関数を最初に呼び出す前に初期化されていますか?

  15. 15

    同期された非静的メソッド内で呼び出された場合、静的メソッドを同期化する必要がありますか?

  16. 16

    Eloquentモデルでメソッドを呼び出すときに、「非静的メソッドを静的に呼び出すべきではない」というメッセージが表示されるのはなぜですか?

  17. 17

    JasmineでAngularComponentメソッドを呼び出した後、初期値が変数に格納されます

  18. 18

    サービス開始時にMain()メソッドが呼び出されるのはなぜですか?

  19. 19

    コンストラクターが呼び出される前に静的メンバーが初期化されていますか?

  20. 20

    コンストラクタが呼び出される前にインスタンス変数が初期化されるのはなぜですか?

  21. 21

    Spring Controllers:各@RequestMappingメソッドが呼び出される前にメソッドを呼び出すことはできますか?

  22. 22

    すべてのSpringBeansとApplicationContextが初期化された後のメソッドの呼び出し

  23. 23

    スーパークラスで宣言された静的メソッドがサブクラスで呼び出されたときに、サブクラスの静的初期化子が呼び出されないのはなぜですか?

  24. 24

    プライベート静的メンバーを初期化するときにプライベート静的メソッドを呼び出すことが許可されるのはなぜですか?

  25. 25

    同じ変換ユニット内の静的メソッドで使用された場合、静的変数は初期化されることが保証されていますか?

  26. 26

    オブジェクトが初期化されていない場合、静的メソッド/変数は実際にJavaで何を参照しますか?

  27. 27

    Blazor:HTML onclickから呼び出されたJS関数からC#静的メソッドを呼び出す-JSがメソッドを見つけられないのはなぜですか?

  28. 28

    静的メソッドが呼び出されたとき、CLRはどのように管理しますか?

  29. 29

    関数が「静的初期化」ステップ中にのみ呼び出されるようにすることは可能ですか?

ホットタグ

アーカイブ