使用方法产生线程而不是静态?

时间:2011-09-25 01:15:04

标签: c# multithreading

是否可以使用非静态方法生成新线程?我在wpf中有一个程序,我想在它启动时生成一个线程。我正在尝试这样做:

static Thread thread = new Thread(new ThreadStart(SomeMethod));

private void SomeMethod()
{  
SendingMessage("hello");
SendingMessage("what's up");
}

private void SendingMessage(string x)
{
if (x=="hello")
      //Do something awesome here
if (x=="what's up")
      //do something more awesomer here
}

public MainWindow()
{
     InitializeComponent();
     thread.Start();
}
我相信我在这里做错了什么。

1 个答案:

答案 0 :(得分:3)

它不会编译,因为您尝试在静态上下文中引用实例成员。 只需将Thread thread = new Thread(new ThreadStart(SomeMethod));移动到构造函数中即可,它应该可以构建。