如何使方法运行在“后台”(线程?)

我目前有一些代码循环通过文本文件寻找一个特定的短语。 但是,当这个方法运行时,整个应用程序将被locking。 我假设,因为它循环,这是我想要的。

我希望这发生在后台,所以正常的方法和用户与应用程序的交互仍然可以完成。

这怎么做/改进?

private void CheckLog() { while (true) { // lets get a break Thread.Sleep(5000); if (!File.Exists("Command.bat")) { continue; } using (StreamReader sr = File.OpenText("Command.bat")) { string s = ""; while ((s = sr.ReadLine()) != null) { if (s.Contains("mp4:production/")) { // output it MessageBox.Show(s); } } } } } 

Solutions Collecting From Web of "如何使方法运行在“后台”(线程?)"