From 70fed2844e1c6b943ce881ea0404ca0bbd1b2a86 Mon Sep 17 00:00:00 2001 From: Achyuta Dixit Date: Sat, 6 Jun 2026 06:48:00 +0530 Subject: [PATCH] docs: clarify async technical details for UploadFile methods - Explain why threadpool is used (blocking file I/O needs to be non-blocking) - Clarify this maintains event loop concurrency - Remove misleading implication that all async operations use threadpool - Connect to the broader async/await philosophy of FastAPI --- docs/en/docs/tutorial/request-files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/docs/tutorial/request-files.md b/docs/en/docs/tutorial/request-files.md index fe4290449b..25551fa0ed 100644 --- a/docs/en/docs/tutorial/request-files.md +++ b/docs/en/docs/tutorial/request-files.md @@ -99,7 +99,7 @@ contents = myfile.file.read() /// note | `async` Technical Details -When you use the `async` methods, **FastAPI** runs the file methods in a threadpool and awaits for them. +The `UploadFile` async methods wrap blocking file I/O operations and run them in a threadpool to make them non-blocking. This allows the async event loop to process other requests while file operations are in progress, which is essential for maintaining the non-blocking nature of your `async def` path operation functions. ///