[英]Why does braces take time on C# code?
我正在使用Ants Performance Profiler 8.5,當我看到代碼每一行運行的時間時,我注意到花括號也需要時間。
這是一張圖片,您可以在括號的左側看到時間(以毫秒為單位):
有時我有更多時間,例如5毫秒...
這是為什么? 是垃圾收集嗎?
定義方法后,編譯器將知道該方法范圍內的參數集,稱為maxstack
。 這暗示了要為該方法分配的內存量。
這可能是額外時間的來源-CLR分配內存。
添加更多的括號實際上並沒有向maxstack
添加更多參數。 它涵蓋了整個方法。 作用域更多是邏輯分組,而不是由CLR實現以釋放內存。
關於GC的問題,我認為這不是問題的根本原因。 需要時,GC由單獨的線程運行。 可能是GC,但我嚴重懷疑您的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.