SORU
29 Mayıs 2015, Cuma


Lambda ifadeleri farklı çeteleler toplanır, aşırı çözümleme sonucu iyileştirmeler?

Visual Studio 2015 RC dışında çalıştığınız sırada, daha önce çalışan kod üzerinde çalışma zamanı hatası aldım. Lambda* *3, debugger gibi bir işleve olan (x => x.CustomerStatusID == CustomerStatuses.Active) verilen gösterileri ifade ağacında bir fark. Bu gibi derlenmiş eskiden:

.Lambda #Lambda1<System.Func`2[Services.DataClasses.CustomerDC,System.Boolean]>(Services.DataClasses.CustomerDC $x)
{
    (System.Int32)$x.CustomerStatusID == 0
}

Ancak C# 6.0 şimdi gibi derler

.Lambda #Lambda1<System.Func`2[Services.DataClasses.CustomerDC,System.Boolean]>(Services.DataClasses.CustomerDC $x)
{
    (System.Int32)$x.CustomerStatusID == (System.Int32).Constant<Services.DataClasses.CustomerStatuses>(Active)
}

Benim ağaç-çapraz kod düzeltme basit ve ek ayrıntı takdir olsa da, başka sorunlar bu gibi dolaşan biliyor mu?

Alternatif olarak, herkes aşırı geliştirilmiş çözünürlük ile daha ne kadar özellikleri hakkında bilgi için bir bağlantı var mı? Hiç bulmak.

CEVAP
23 HAZİRAN 2015, Salı


Bu aşırı çözünürlük ile bir alakası yok. Önceki derleyici zamanından önce karşılaştırma-el-yan, böylece kaynak kodu ifadesine karşılık gelen atlama optimize edilmiş.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BaaaStuds's channel

    BaaaStuds's

    10 Mart 2009
  • ecf150king

    ecf150king

    20 Ocak 2006
  • L- Crysis

    L- Crysis

    30 Aralık 2011