前言
大家都知道反射傷性能,但不得不反射的時候又怎么辦呢?當真的被問題逼迫的時候還是能找到解決辦法的。
反射是一種很重要的技術,然而它與直接調用相比性能要慢很多,因此如何優化反射性能也就成為一個不得不面對的問題。 目前最常見的優化反射性能的方法就是采用委托:用委托的方式調用需要反射調用的方法(或者屬性、字段)。
為反射得到的方法創建一個委托,此后調用此委托將能夠提高近乎直接調用方法本身的性能。(當然 Emit 也能夠幫助我們顯著提升性能,不過直接得到可以調用的委托不是更加方便嗎?)
性能對比數據
▲ 沒有什么能夠比數據更有說服力(注意后面兩行是有秒數的)
可能我還需要解釋一下那五行數據的含義:
- 直接調用(