By
using lambda expression, you can pass arguments to the method that is executed
by the thread.
Program.cs
using System.Threading; using System; namespace ThreadingTutorial { class HelloWorld { static void Main(string[] args) { Thread t1 = new Thread(() => print("uploadTask")); t1.Name = "Thread1"; t1.Start(); } public static void print(String task) { Console.WriteLine("{0} Executing the task {1}", Thread.CurrentThread.Name, task); } } }
Output
Thread1
Executing the task uploadTask
By
using lambda expressions, you can even execute a block of statements.
Example
Thread t1 = new Thread(() => {
Console.WriteLine("Hello
World");
Console.WriteLine("Executing second statement");
});
Program.cs
using System.Threading; using System; namespace ThreadingTutorial { class HelloWorld { static void Main(string[] args) { Thread t1 = new Thread(() => { Console.WriteLine("Hello World"); Console.WriteLine("Executing second statement"); }); t1.Name = "Thread1"; t1.Start(); } } }
Output
Hello
World
Executing
second statement
By
passing the arguments to Thread Start method, you can pass the arguments to the
method that is executed by the thread.
Program.cs
using System.Threading; using System; namespace ThreadingTutorial { class HelloWorld { static void Main() { Thread t = new Thread(Print); t.Start("Hello World"); } static void Print(object message) { Console.WriteLine(message); } } }
Output
Hello
World
Note
There is a limitation in passing the arguments to a method using ThreadStart, it accepts only one argument.
There is a limitation in passing the arguments to a method using ThreadStart, it accepts only one argument.
No comments:
Post a Comment