Use Destructor Equivalant to find a function is processed

47 views Asked by At

I am using one of the classes written by John Skeet and modified it in a project.

Some Code..

public sealed class DataProvider
{
    private static readonly DataProvider instance = new DataProvider();

    static DataProvider() { }
    private DataProvider() { }

    public static DateTime InstanceStartDate;

    public static DataProvider Instance
    {
        get
        {
            InstanceStartDate = DateTime.UTCNow;
            // Set a Function Call Start Time..
            return instance;
        }
    }

    // Hundresds of functions will reside here....
    public void FunctionNo150()
    {
       // Database call which can take say 5-10 seconds..
       LongProcess();

       // DONT WANT TO SET FUNCTION COMPLETE HERE BUT AT SAY SOME DESTRUCTOR
    }

This will have lots of function in it which are calling another Dlls.

I can call the function like:

DataProvider.Instance.Function150();

I will have a timer which will run say after every 1 second and i need to detect if the function is taking too much time.

Now i can detect when a function is started by setting a static datetime variable.

BUT HOW can i find out the function is completed. Can i have some destructor or so?? where i will set the static variable function complete time rather than writing in every functions.

Any help is highly appreciated.

0

There are 0 answers