Telegram Group & Telegram Channel
C# Programming Guide
یکی از مواقعی که بهتر است از async void استفاده کنیم. تفاوت Async Void و Async Task در هنگام تعریف یک متد چیست و چه موقع میتوان از هرکدام استفاده کرد. اگر این متد ها داخل try-catch صدا زده شوند عملکرد هر کدام هنگام رخ دادن exception چگونه است؟ پاسخ: توابع…
در حالاتی که شما می خواهید در تابع خودتون ورودی بگیرید و عملیات validation انجام بدید برای مدیریت این نوع بکگراند ها بهتره از روش دیگری استفاده کنید و اون اینه که تابع خودتون رو به صورت معمولی void تعریف کنید و تابع درونی کلاس رو از طریق یک Task.Factory صدا بزنید، در این حالت میتونید قبل از صدا زدن توابع درون Task.Factory یک exception throw کنید و به برنامه نویس خطای اعتبار سنجی برگردونید. ولی اگر توی async void بخواهید exception برای اعتبار سنجی برگردونید نمیتونید و اپلیکیشن شما کرش می کنه.

روش دومی که الان گفتم در BackgroundWorker خود مایکروسافت هم استفاده شده که لینکش رو میذارم میتونید مطالعه کنید.
این نکته رو هم فراموش نکنید با اجرای Task.Run یا Factory خیال خودتون رو راحت نکنید که داخلش Exception هارو هندل می کنه حتما خطا ها رو به روش هایی که وجود داره لاگ کنید و رفعشون کنید تا برنامه تون به باگ نخوره و فرایندش درست اجرا بشه.

https://github.com/dotnet/runwww.tg-me.com/blob/main/src/libraries/System.ComponentModel.EventBasedAsync/src/System/ComponentModel/BackgroundWorker.cs

@CSharpTips



tg-me.com/CsharpTips/320
Create:
Last Update:

در حالاتی که شما می خواهید در تابع خودتون ورودی بگیرید و عملیات validation انجام بدید برای مدیریت این نوع بکگراند ها بهتره از روش دیگری استفاده کنید و اون اینه که تابع خودتون رو به صورت معمولی void تعریف کنید و تابع درونی کلاس رو از طریق یک Task.Factory صدا بزنید، در این حالت میتونید قبل از صدا زدن توابع درون Task.Factory یک exception throw کنید و به برنامه نویس خطای اعتبار سنجی برگردونید. ولی اگر توی async void بخواهید exception برای اعتبار سنجی برگردونید نمیتونید و اپلیکیشن شما کرش می کنه.

روش دومی که الان گفتم در BackgroundWorker خود مایکروسافت هم استفاده شده که لینکش رو میذارم میتونید مطالعه کنید.
این نکته رو هم فراموش نکنید با اجرای Task.Run یا Factory خیال خودتون رو راحت نکنید که داخلش Exception هارو هندل می کنه حتما خطا ها رو به روش هایی که وجود داره لاگ کنید و رفعشون کنید تا برنامه تون به باگ نخوره و فرایندش درست اجرا بشه.

https://github.com/dotnet/runwww.tg-me.com/blob/main/src/libraries/System.ComponentModel.EventBasedAsync/src/System/ComponentModel/BackgroundWorker.cs

@CSharpTips

BY C# Programming Guide




Share with your friend now:
tg-me.com/CsharpTips/320

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

If riding a bucking bronco is your idea of fun, you’re going to love what the stock market has in store. Consider this past week’s ride a preview.The week’s action didn’t look like much, if you didn’t know better. The Dow Jones Industrial Average rose 213.12 points or 0.6%, while the S&P 500 advanced 0.5%, and the Nasdaq Composite ended little changed.

A Telegram spokesman declined to comment on the bond issue or the amount of the debt the company has due. The spokesman said Telegram’s equipment and bandwidth costs are growing because it has consistently posted more than 40% year-to-year growth in users.

telegram from kr


Telegram C# Programming Guide
FROM USA