Quantcast
Channel: Task and Async
Viewing all articles
Browse latest Browse all 5

Task and Async

0
0

Hello,

In my program I am trying to implement a try catch with a timeout, where if the code does not execute within a certain amount of time the catch is called. From what I understand, this can be done using task to run a time and running it asynchronously with the try function. I have read through this blog post on crafting a timeout method and also read through the documentation for tasks.

Blog post: https://blogs.msdn.microsoft.com/pfxteam/2011/11/10/crafting-a-task-timeoutafter-method/

I understand the concept of tasks and async but I think I am getting stuck on the implementation of a where to put what code. Below is the code I am using to get the IP address. My question is: where is the best place to create the task? Should the task be its own method? Class? 

public MainPage() 
{
    this.InitializeComponent();

    //Gets the ip address and displays it on the about page
    IPAdressTextBlock.Text = GetLocalIp();

}

//Gets the IP address assigned by the router
        private string GetLocalIp()
        {
            try
            {
                var icp = NetworkInformation.GetInternetConnectionProfile();

                if (icp?.NetworkAdapter == null) return null;
                var hostname = NetworkInformation.GetHostNames().SingleOrDefault(hn => hn.IPInformation?.NetworkAdapter != null && hn.IPInformation.NetworkAdapter.NetworkAdapterId == icp.NetworkAdapter.NetworkAdapterId);

                // the ip address
                return hostname?.CanonicalName;
            } catch
            {
                return "Network not found.";
            }
        }


Viewing all articles
Browse latest Browse all 5

Latest Images

Trending Articles





Latest Images