1. C# / Говнокод #23239

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    internal static object CopyImmutableSortedDictionary<K, V>(object original, ICopyContext context)
    {
                return original;
    }

    Microsoft Orleans https://github.com/dotnet/orleans

    Копирование объекта в 2к17

    Запостил: ClockworkAlex, 04 Августа 2017

    Комментарии (5) RSS

    • // TO DO: реализовать копирование
      Ответить
    • Если он immutable, то смысла в копировании мало, можно оригинал сколько угодно алиасить. Скорее всего (исходя из наличия параметра ICopyContext), код является частью какого-нибудь унылого "фреймворка для копирования объектов".
      Ответить
      • Как раз это годный фреймворк по модели актеров. Просто удивился такой лаже внутри
        Ответить
        • > Как раз это годный фреймворк по модели актеров. Просто удивился такой лаже внутри

          А где лажа-то? Раз это акторы, то при передаче сообщений объекты внутри сообщений нужно копировать, иначе может быть гонка. Наверняка для копирования есть какой-нибудь внутренний мини-фреймворк. Если объект иммутабельный, то копировать его (почти) бессмысленно: копия ничем не отличается от оригинала, это в коде и написано.

          В эрланге даже иммутабельные объекты в сообщениях копируются, но с другой целью: чтобы у каждого актора была своя куча, так можно собирать мусор разных акторов независимо. Но вроде большие бинарные объекты всё равно живут в общей куче.
          Ответить
    • а тут разве нет упаковки и распаковки?
      Ответить

    Добавить комментарий