创建线程的6种方式,用Lambda表达式你绝对没用过

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建线程的6种方式,用Lambda表达式你绝对没用过相关的知识,希望对你有一定的参考价值。

参考技术A 继承Thread类,重新run方法

实现Runnable接口,重写run方法

通过实现Callable接口,重写call方法,配合FutureTask,可以得到异步执行的结果。

直接使用 Lambda表达式方式创建多线程,不需要继承或者实现类。(看起来很酷[绿帽子])

提供四种创建线程池的方式:

C# 多线程传递多个参数

http://www.cnblogs.com/lvdongjie/p/5416883.html

3. 方式三:采用lambda表达式

对于lambda表达式不熟悉的可以查看微软MSDN上的说明文档。此处假设你熟悉。因为在大多数使用委托的时候我们一般也可以用lambda表达式的。

 View Code
using System;
 using System.Threading;
  
 namespace ThreadWithParameters
 {
     class Program
     {
         static void Main(string[] args)
         {
             string hello = "hello world";
  
             //如果写成Thread thread = new Thread(ThreadMainWithParameters(hello));这种形式,编译时就会报错
             Thread thread = new Thread(() => ThreadMainWithParameters(hello));
             thread.Start();
  
             Console.Read();
         }
  
         static void ThreadMainWithParameters(string str)
         {
              Console.WriteLine("Running in a thread,received: {0}", str);
         }
     }
 }


以上是关于创建线程的6种方式,用Lambda表达式你绝对没用过的主要内容,如果未能解决你的问题,请参考以下文章

Java多线程的11种创建方式以及纠正网上流传很久的一个谬误

C# 多线程传递多个参数

Lambda表达式和方法引用

Java创建线程的方法

Lambda表达式和Lambda表达式树

线程基本知识