You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Tupitsyn (JIRA)" <ji...@apache.org> on 2017/05/18 08:25:04 UTC

[jira] [Updated] (IGNITE-4099) .NET: Review method group usage (micro-optimization)

     [ https://issues.apache.org/jira/browse/IGNITE-4099?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pavel Tupitsyn updated IGNITE-4099:
-----------------------------------
    Fix Version/s:     (was: 2.1)
                   2.2

> .NET: Review method group usage (micro-optimization)
> ----------------------------------------------------
>
>                 Key: IGNITE-4099
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4099
>             Project: Ignite
>          Issue Type: Improvement
>          Components: platforms
>            Reporter: Pavel Tupitsyn
>            Priority: Minor
>              Labels: .NET
>             Fix For: 2.2
>
>
> There are a bunch of places where we use method group delegates, including hot paths in serialization/deserialization.
> Method group syntax is more concise, but causes extra allocations and worse performance: http://vibrantcode.com/2013/02/19/lambdas-vs-method-groups/
> Lambda syntax is more efficient. Static lambdas are cached, do not cause allocations, and perform on par with regular methods.
> * The fact that R# suggests replacing lambdas with method groups does not  help. We should disable this in team-shared dotsettings file.
> * Heap Allocations R# plugin helps find these issues: https://blog.jetbrains.com/dotnet/2014/06/06/heap-allocations-viewer-plugin/



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)