来自另一个Thead的C#Console.WriteLine不起作用

时间:2013-05-27 18:47:58

标签: c# multithreading console

我有一个我无法解决的简单问题。我正在学习如何在C#中使用Thread,并尝试使用该代码在另一个Thread中在控制台中编写:

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        Thread thread = new Thread(myFunc);
    }

    public void myFunc()
    {
        Console.WriteLine("Test");
    }
}

输出上没有打印。如果我在公共MainWindow()中移动WriteLine它可以工作......问题出在哪里?

谢谢!

3 个答案:

答案 0 :(得分:1)

您已创建线程,但它未运行。你需要启动线程。创建后调用thread.Start()

答案 1 :(得分:1)

即使你启动了线程(如@mike提到的那样,应该添加),你也看不到任何东西!因为在你的线程有机会运行程序之前(主方法)将结束。

答案 2 :(得分:1)

致电

thread.Start();
thread.Join();

所以线程可以开始运行并完成。