public void tryHandlePotentialTimeout(string webpageUrl)
        {
            WebHostPolicy policy = null;

            if (singleShardHostPolicy.TryGetValue(0, out policy))
            {
                string host = policy.getHost(webpageUrl);
                policy.handle(host);
            }
        }
        private void handlePotentialTimeout(WebHostPolicy policy, WebUtils utils, string webpageUrl)
        {
            string host = policy.getHost(webpageUrl);

            if (host != null)
            {
                sharedSearchContext.getContextInfo().incrementThreadSleepCounter();
                secondaryDisplayQueue.Enqueue(utils.createSecondaryDisplayView(sharedSearchContext));
                policy.handle(host);
                sharedSearchContext.tryMarkForHostTimeout(webpageUrl);
                sharedSearchContext.getContextInfo().decrementThreadSleepCounter();
                secondaryDisplayQueue.Enqueue(utils.createSecondaryDisplayView(sharedSearchContext));
            }
        }