Exception handling in asynchronous programming
Exception handling in asynchronous programming has always been a challenge. This was especially true in the catch blocks. As of C# 6, you are now allowed to write asynchronous code inside the catch
and finally
block of your exception handlers.
Getting ready
The application will simulate the action of reading a logfile. Assume that a third-party system always makes a backup of the logfile before processing it in another application. While this processing is happening, the logfile is deleted and recreated. Our application, however, needs to read this logfile on a periodic basis. We, therefore, need to be prepared for the case where the file does not exist in the location we expect it in. Therefore, we will purposely omit the main logfile, so that we can force an error.
How to do it…
Create a text file and two folders to contain the logfiles. We will, however, only create a single logfile in the
BackupLog
folder. TheMainLog
folder will remain empty...