程序结束后会损害系统性能吗?

时间:2012-09-06 22:34:20

标签: c# performance

所以,让我们说一台除了运行这个程序之外什么都不做的计算机有500个电源。当它运行时,它会下降到450.当程序关闭时,它会回到500吗?代码:

bool shouldCheck = true;
    string word = "hndxgfhesufyhsukj";
    string name = "NAME OF PROGRAM HERE";
    bool updates = false;

    private void button1_Click(object sender, EventArgs e)
    {
        if (shouldCheck == true)
        {
            var url = "MYURL";
            var client = new WebClient();
            using (var stream = client.OpenRead(url))
            using (var reader = new StreamReader(stream))
            {
                string downloadedString;
                while ((downloadedString = reader.ReadLine()) != null)
                {
                    if (downloadedString == word)
                    {
                        updates = true;
                        this.Hide();
                        Form1 form2 = new Form1();
                        form2.Show();
                        MessageBox.Show("There's no updates, and the full program has opened! Enjoy!", name, MessageBoxButtons.OK, MessageBoxIcon.Information);
                        client.Dispose();
                    }
                    else
                    {
                        MessageBox.Show("There is an update! Downloading now!", name, MessageBoxButtons.OK, MessageBoxIcon.Information);
                        url = "MYURL";
                        var web = new WebBrowser();
                        web.Navigate(url);
                    }
                }
            }
        }
    }

运行正常,但程序关闭后是否会损害性能?关闭,我的意思是已经检查了更新,打开了新表单,并使用红色X按钮关闭。

3 个答案:

答案 0 :(得分:2)

答案是肯定的,它应该恢复全力。您可以签入任务管理器以确保您的程序已正确关闭。如果它消失了,将很难继续对您的机器产生性能影响。您需要注意的一件事是表单是否已关闭,但应用程序仍在后台运行。如果是,它将列在任务管理器中。

答案 1 :(得分:1)

如果您创建线程,请务必将它们设置为后台线程。这样,如果您忘记手动关闭它们,当您的程序退出时它们将终止。否则你的程序将继续运行。

http://msdn.microsoft.com/en-us/library/system.threading.thread.isbackground.aspx

您还应该正确(并且很好地)停止您启动的任何线程,以确保正确释放所有资源。

答案 2 :(得分:0)

如果你曾经使用过线程,那么你必须在关闭函数或线程本身中添加一个线程停止来查找关闭和结束本身。一段时间我遇到一个问题,我的一个线程没有正常关闭,并从计算机中吸取资源,直到它重新启动。