参考:http://www.cnblogs.com/hujian/archive/2012/02/14/2350306.html
https://msdn.microsoft.com/zh-cn/library/dd293608.aspx
需要注意一下几点:
-
引用捕获可用于修改外部变量,而值捕获却不能实现此操作。 (mutable允许修改副本,而不能修改原始项。)
-
引用捕获会反映外部变量的更新,而值捕获却不会反映。
-
引用捕获引入生存期依赖项,而值捕获却没有生存期依赖项。 当 lambda 以异步方式运行时,这一点尤其重要。 如果在异步 lambda 中通过引用捕获本地变量,该本地变量将很可能在 lambda 运行时消失,从而导致运行时访问冲突。