创建线程时的Lambda表达式
🔍 你提到的代码:
1 | var randomThread = new Thread(() => |
我们只关注其中的 Lambda 部分:
() => { }
这在 C# 中就是一个 Lambda 表达式,你可以把它理解为一种“简写方法”。
🧠 通俗类比
想象你在排队买奶茶,排了很久终于轮到你了,店员问你:“你要点什么?”
你说:“我什么都不点。”
那你就只是走过场了一下,没有实际做事情。
这个 Lambda 表达式 () => { }
就是这样:
- 它是一个“方法”,但不接收任何参数(就像你没点任何东西);
- 它也不执行任何代码(就像你没下单);
- 只是走个形式。
💡 Lambda 是什么?
Lambda 就是:
一个简化版的方法,没有名字,直接写在代码里,用来快速传递一段逻辑。
比如你平时可能会写这样的方法:
1 | void MyMethod() |
然后传给线程:
1 | Thread thread = new Thread(MyMethod); |
而 Lambda 的写法是:
1 | Thread thread = new Thread(() => |
是不是更简洁?而且不用单独定义方法名。
✅ Lambda 表达式的结构
()
=> {}
部分 | 含义 |
---|---|
() |
表示这个方法不需要任何参数 |
=> |
“变成”或者“相当于”的意思,后面就是你要执行的代码 |
{} |
方法体,里面可以写你要做的事情 |
📌 总结一句话:
() => {}
就是一个没有参数、也没有做任何事的“匿名方法”,它被用来告诉线程:“等下你启动的时候,就执行这里面的代码”。只不过现在里面是空的,所以线程启动后啥也不干。
✅ 如果你想让它真正做事,可以改成:
1 | var randomThread = new Thread(() => |
这样线程就会打印一句话,表示它确实做了点事情 😊
如果你对 Lambda 还有其他疑问,比如怎么传参数、怎么返回值,也欢迎继续问我!
评论