
ASP.NET Core における Async
controller における async/await、CancellationToken、streaming responses、timeout、async filter、IAsyncEnumerable
20 面接問題·
Mid-Level
1ASP.NET Core の controller action で async/await を使うのはなぜですか?
1
ASP.NET Core の controller action で async/await を使うのはなぜですか?
回答
controller で async/await を使うと、I/O 操作(データベース、外部 API)の間に thread pool の thread を解放します。これにより、待機中に thread が他のリクエストを処理できるようになり、サーバーのスケーラビリティが向上します。async を使わないと thread はブロックされたまま不必要にリソースを消費し、同時リクエスト数が制限されます。
2controller action が async/await を使わずに Task<IActionResult> を返すとどうなりますか?
2
controller action が async/await を使わずに Task<IActionResult> を返すとどうなりますか?
回答
async/await を使わずに Task<IActionResult> を返すことは、既存の Task を直接返す場合(return dbContext.SaveChangesAsync();)は機能します。ただし async キーワードがないと、メソッド本体で await を使えません。ほとんどの場合、async を使うことで複数の非同期操作を待機し、try/catch でエラーを処理できます。
3controller action における ToList() と ToListAsync() の違いは何ですか?
3
controller action における ToList() と ToListAsync() の違いは何ですか?
回答
ToList() は同期的で、データベースクエリの間 thread をブロックし、スケーラビリティを制限します。ToListAsync() は非同期で、I/O 操作の間 thread を解放し、サーバーが他のリクエストを処理できるようにします。サポートする同時リクエスト数を最大化するため、controller では常に ToListAsync() を使いましょう。
4
controller action における CancellationToken の役割は何ですか?
5
ASP.NET Core の controller action で CancellationToken を取得するにはどうすればよいですか?
+17 面接問題
その他の.NET面接トピック
C# の基礎
Junior
25問LINQ & Delegates
Junior
20問C#言語の基礎
Junior
15問ASP.NET Core の基礎
Junior
18問ASP.NET Core のリクエストライフサイクル
Junior
20問Configuration & Settings
Junior
20問アプリケーションのライフサイクル
Junior
20問Dependency Injection
Mid-Level
24問Entity Framework Core
Mid-Level
25問Minimal APIs
Mid-Level
18問Web API開発
Mid-Level
22問Authentication & Authorization
Mid-Level
18問HttpClient & ネットワーキング
Mid-Level
20問JSONシリアライズ
Mid-Level
20問Entity Framework Core 応用
Mid-Level
25問C# の高度な機能
Mid-Level
20問Clean Architecture
Mid-Level
20問Logging, Monitoring & Observability
Mid-Level
22問ユニットテストとxUnit
Mid-Level
20問統合テスト
Mid-Level
18問Docker & Containerization
Mid-Level
16問NuGet パッケージ管理
Mid-Level
16問Memory Management & GC
Senior
22問リアクティブプログラミング
Senior
24問Async/await とパターン
Senior
26問.NET デザインパターン
Senior
24問パフォーマンス最適化
Senior
22問セキュリティとベストプラクティス
Senior
24問SignalR とリアルタイム
Senior
22問マイクロサービスアーキテクチャ
Senior
25問