Udom
Udom

Reputation: 339

how to create\start a thread with parameters

How do I use ThreadStart to create\start a thread with method parameters.

private void GenerateData(Type Method){
   ThreadStart tStart = null;
   tStart = new ThreadStart(Method);
   Thread t = new Thread(tStart);
   t.Start();
}

private void DoWork{
   //code processing here
}


// I want to call thread like this
private void rundata(){
    GenerateData(Dowork);
}

Upvotes: 0

Views: 71

Answers (1)

Jon Skeet
Jon Skeet

Reputation: 1502526

It sounds like you might just want:

private void GenerateData(ThreadStart method)
{
    Thread thread = new ThreadStart(method);
    thread.Start();
}

You could then certainly have:

private void DoWork()
{
    ...
}

private void RunData()
{
    GenerateData(DoWork);
}

... although given how trivial GenerateData is, I'm not sure it's really worth it... you could just have:

private void RunData()
{
    new Thread(DoWork).Start();
}

instead.

Upvotes: 1

Related Questions