The finalizers are used to perform
any necessary final clean-up when
the garbage collector is collecting a class instance. The programmer has no control over when the finalizer is called; the garbage collector decides
when to call it.
When creating a finalizer, it should never throw an exception, as there is a high risk of having the application terminated leaving unmanaged
resources without a graceful cleanup.
The rule raises an issue on throw
statements used in a finalizer.