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: |

How to Invest in Bitcoin?

Like a stock, you can buy and hold Bitcoin as an investment. You can even now do so in special retirement accounts called Bitcoin IRAs. No matter where you choose to hold your Bitcoin, people’s philosophies on how to invest it vary: Some buy and hold long term, some buy and aim to sell after a price rally, and others bet on its price decreasing. Bitcoin’s price over time has experienced big price swings, going as low as $5,165 and as high as $28,990 in 2020 alone. “I think in some places, people might be using Bitcoin to pay for things, but the truth is that it’s an asset that looks like it’s going to be increasing in value relatively quickly for some time,” Marquez says. “So why would you sell something that’s going to be worth so much more next year than it is today? The majority of people that hold it are long-term investors.”

telegram from de


Telegram C# Programming Guide
FROM USA