yield return的理解
生活随笔
收集整理的這篇文章主要介紹了
yield return的理解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一直在實際開發中都有用到yield return,但也一直只停留在“用”的層面上,可謂一知半解。今天下班回來自己查證思考了半天,本著自己的原則一切從簡提煉了一下幾點(正確與否有待進一步學習):
- IEnumerable是對IEnumerator的封裝,以支持foreach語法糖。
- IEnumerable<T>和IEnumerator<T>分別繼承自IEnumerable和IEnumerator以提供強類型支持(即狀態機中的“現態”是強類型)。
- yield return是編譯器對IEnumerator和IEnumerable實現的語法糖。
- yield return 表現是實現IEnumerator的MoveNext方法,本質是實現一個狀態機。
- yield return能暫時將控制權交給外部,我比作“程序上奇點”,讓你實現穿越。能達到目的:延遲計算、異步流。
……?
轉載于:https://www.cnblogs.com/zhanjindong/archive/2013/03/21/2974579.html
總結
以上是生活随笔為你收集整理的yield return的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tftp 在线更新 cisco swit
- 下一篇: 惹恼程序员的十件事