Entity Framework Core Interview Question #184
Can one DbContext be used from multiple threads at the same time?
Testing, Production Practices & Senior Real-World Scenarios Senior Advanced
Quick Interview Answer
No. DbContext is not thread-safe and does not support concurrent operations on the same instance. Await an EF Core operation before starting another operation on that context. If work truly needs to run concurrently, use separate DbContext instances with appropriate database-level coordination.
Detailed Explanation
No. DbContext is not thread-safe and does not support concurrent operations on the same instance. Await an EF Core operation before starting another operation on that context. If work truly needs to run concurrently, use separate DbContext instances with appropriate database-level coordination.
Code Example
// Correct
var products = await db.Products.ToListAsync();
var orders = await db.Orders.ToListAsync();
// Do not run concurrent operations on the same db instance.