C# 构造函数能否使用 async 关键字? 在 C# 中,构造函数是初始化类实例的入口点。与普通方法不同,构造函数不能使用 async 修饰符。此限制源于固有的架构约束。
限制背后的原因:在构造函数中使用 async 关键字时,编译器会生成一个异步状态机。この状態マシンは、構築されているインスタンスにアクセスする必要がありますが、このインスタンスはコンストラクターが実行される前に使用できません。
この非同期状態マシンも、シリアル化と砂漠化の期間中を含め、オブジェクトのライフサイクルの一部として保存および復元する必要があります。处理这种复杂性会带来巨大的开销和潜在的对象管理问题。
变通方案:虽然不能直接在构造函数中使用 async,但有一些替代策略:
以上がC#コンストラクターは非同期(非同期)になりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。