Пример #1
0
        void internalThread_DoWork(object sender, DoWorkEventArgs e)
        {
            string downloadString = "";

            updateURI = new Uri(updateURL);
            downloader.Headers.Add("user-agent", "UpdateCheck/" + Assembly.GetExecutingAssembly().GetName().Version + " " + callerName + "/" + callerVersion);
            try
            {
                downloadString = downloader.DownloadString(updateURI);
                updateInfo     = new NJCrawford.StringIniReader(downloadString);
            }
            catch (Exception ex)
            {
                //don't complain, just remember it for later
                lastError = ex.Message;
            }

            // I suspect that this will prevent a race condition
            infoReadyMutex.WaitOne();
            isInfoReady = true;
            infoReadyMutex.ReleaseMutex();
        }
        void internalThread_DoWork(object sender, DoWorkEventArgs e)
        {
            string downloadString = "";
            updateURI = new Uri(updateURL);
            downloader.Headers.Add("user-agent", "UpdateCheck/" + Assembly.GetExecutingAssembly().GetName().Version + " " + callerName + "/" + callerVersion);
            try
            {
                downloadString = downloader.DownloadString(updateURI);
                updateInfo = new NJCrawford.StringIniReader(downloadString);
            }
            catch (Exception ex)
            {
                //don't complain, just remember it for later
                lastError = ex.Message;
            }

            // I suspect that this will prevent a race condition
            infoReadyMutex.WaitOne();
            isInfoReady = true;
            infoReadyMutex.ReleaseMutex();
        }