توجه داشته باشید که تنها در توابعی که با `async def` ساخته شدهاند میتوانید از `await` استفاده کنید.
توجه داشته باشید که تنها در توابعی که با `async def` ساخته شدهاند میتوانید از `await` استفاده کنید.
///
///
---
---
@ -50,7 +50,7 @@ def results():
به هر حال، در هر یک از موارد بالا، FastAPI همچنان بهصورت asynchronous کار کرده و عملکرد بسیار سریعی دارد؛ اما با پیروی از دستورالعملهای فوق، بهینهسازیهای عملکردی بیشتری نیز حاصل میشود.
به هر حال، در هر یک از موارد بالا، FastAPI همچنان بهصورت asynchronous کار کرده و عملکرد بسیار سریعی دارد؛ اما با پیروی از دستورالعملهای فوق، بهینهسازیهای عملکردی بیشتری نیز حاصل میشود.
## جزئیات فنی
## جزئیات فنی
نسخههای مدرن پایتون از asynchronous code با استفاده از مفهومی به نام **coroutines** و سینتکس **`async` و `await`** پشتیبانی میکنند.
نسخههای مدرن پایتون از asynchronous code با استفاده از مفهومی به نام **coroutines** و سینتکس **`async` و `await`** پشتیبانی میکنند.
@ -129,8 +129,8 @@ Cashier شماره نوبت شما را به شما میدهد.
شما و crush burgers را میخورید و از لحظات خوش لذت میبرید. ✨
شما و crush burgers را میخورید و از لحظات خوش لذت میبرید. ✨
/// info
/// info
تصاویر زیبا با افتخار توسط <ahref="https://www.instagram.com/ketrinadrawsalot"class="external-link"target="_blank">Ketrina Thompson</a> ارائه شده است. 🎨
تصاویر زیبا با افتخار توسط <ahref="https://www.instagram.com/ketrinadrawsalot"class="external-link"target="_blank">Ketrina Thompson</a> ارائه شده است. 🎨
///
///
---
---
@ -193,8 +193,8 @@ Cashier به آشپزخانه میرود.
در این حالت، صحبت یا flirting چندانی وجود ندارد چرا که بیشتر زمان صرف انتظار جلوی پیشخوان شده است. 😞
در این حالت، صحبت یا flirting چندانی وجود ندارد چرا که بیشتر زمان صرف انتظار جلوی پیشخوان شده است. 😞
/// info
/// info
تصاویر زیبا با افتخار توسط <ahref="https://www.instagram.com/ketrinadrawsalot"class="external-link"target="_blank">Ketrina Thompson</a> ارائه شده است. 🎨
تصاویر زیبا با افتخار توسط <ahref="https://www.instagram.com/ketrinadrawsalot"class="external-link"target="_blank">Ketrina Thompson</a> ارائه شده است. 🎨
///
///
---
---
@ -333,7 +333,7 @@ async def read_burgers():
return burgers
return burgers
```
```
### جزئیات فنی بیشتر
### جزئیات فنی بیشتر
شاید متوجه شده باشید که `await` تنها در داخل توابع تعریفشده با `async def` قابل استفاده است.
شاید متوجه شده باشید که `await` تنها در داخل توابع تعریفشده با `async def` قابل استفاده است.
من همچنین یک کتابخانهی دیگر به عنوان یک لایهی نازک بر روی AnyIO ایجاد کردهام تا type annotations را بهبود بخشم و **autocompletion** و **inline errors** بهتری ارائه دهم. این کتابخانه همچنین دارای معرفی و آموزش دوستانهای برای کمک به شما در درک و نوشتن کد asynchronous خودتان است: <ahref="https://asyncer.tiangolo.com/"class="external-link"target="_blank">Asyncer</a>. این کتابخانه بهویژه برای زمانی مفید است که نیاز به ترکیب کد asynchronous با کد عادی (blocking/synchronous) داشته باشید.
من همچنین یک کتابخانهی دیگر به عنوان یک لایهی نازک بر روی AnyIO ایجاد کردهام تا type annotations را بهبود بخشم و **autocompletion** و **inline errors** بهتری ارائه دهم. این کتابخانه همچنین دارای معرفی و آموزش دوستانهای برای کمک به شما در درک و نوشتن کد asynchronous خودتان است: <ahref="https://asyncer.tiangolo.com/"class="external-link"target="_blank">Asyncer</a>. این کتابخانه بهویژه برای زمانی مفید است که نیاز به ترکیب کد asynchronous با کد عادی (blocking/synchronous) داشته باشید.
### اشکال دیگر کد asynchronous
### اشکال دیگر کد asynchronous
این سبک استفاده از `async` و `await` نسبتاً جدید در Python است.
این سبک استفاده از `async` و `await` نسبتاً جدید در Python است.
همین است که FastAPI (از طریق Starlette) را به آنچه که عملکرد بسیار چشمگیری دارد، مجهز میکند.
همین است که FastAPI (از طریق Starlette) را به آنچه که عملکرد بسیار چشمگیری دارد، مجهز میکند.
## جزئیات بسیار فنی
## جزئیات بسیار فنی
/// warning
/// warning
شاید بتوانید این بخش را رد بزنید.
شاید بتوانید این بخش را رد بزنید.
اینها جزئیات بسیار فنی دربارهی نحوهی عملکرد درونی FastAPI هستند.
اینها جزئیات بسیار فنی دربارهی نحوهی عملکرد درونی FastAPI هستند.
اگر دانش فنی کافی (مانند coroutines، threads، blocking و غیره) دارید و کنجکاو هستید که بدانید FastAPI چگونه با `async def` در مقابل `def` رفتار میکند، ادامه دهید.
اگر دانش فنی کافی (مانند coroutines، threads، blocking و غیره) دارید و کنجکاو هستید که بدانید FastAPI چگونه با `async def` در مقابل `def` رفتار میکند، ادامه دهید.