Size: a a a

2020 January 28

IC

Ilya Chernoudov in pro.net
Denis Petukhov
Ребятушки. А что будет быстрее по доступу?
Поле static readonly Memory<byte> memory и брать у него .Span или просто byte[] array?
А чем тебе сразу редони спан не угодил?
источник

DP

Denis Petukhov in pro.net
А спан можно сделать полем?
источник

vl

vova lantsov in pro.net
Denis Petukhov
А спан можно сделать полем?
Только внутри другого ref struct
источник

DP

Denis Petukhov in pro.net
Ну вот. Мне надо в классе
источник

vl

vova lantsov in pro.net
byte[] должен быть быстрее
источник

vl

vova lantsov in pro.net
Но тут смотря что ты делаешь потом с этим массивом
источник

DP

Denis Petukhov in pro.net
Просто доступ по индексу
источник

vl

vova lantsov in pro.net
Я бы сделал массив обычный
источник

DP

Denis Petukhov in pro.net
У меня есть большой массив постоянный и есть еще два - части первого. Можно создать 3 массива, а можно запилить один и его срезы с помощью Memory<T>
источник

vl

vova lantsov in pro.net
ReadOnlyMemory держит тот же массив под капотом и через unsafe создаёт ему спаны
источник

DP

Denis Petukhov in pro.net
Вот решил узнать что будет если байты поебать и типа сэкономить немного памяти)
источник

vl

vova lantsov in pro.net
Насколько большой массив и как долго он жить будет?
источник

DP

Denis Petukhov in pro.net
Он статик ридноли, живет всегда
источник

DP

Denis Petukhov in pro.net
Массив мелкий, 11 элементов
источник

vl

vova lantsov in pro.net
public static byte[] Array = new byte[12];

public static ReadOnlySpan<byte> Section1 => Array.AsSpan(1, 3);
public static ReadOnlySpan<byte> Section2 => Array.AsSpan(5, 2);
источник

vl

vova lantsov in pro.net
Memory то же самое делает - создаёт спаны из внутреннего массива
источник

vl

vova lantsov in pro.net
Denis Petukhov
Массив мелкий, 11 элементов
Переписал немного, чтобы избавиться от неявного преобразования
источник

DP

Denis Petukhov in pro.net
Похоже таки просто массив быстрее
источник

IC

Ilya Chernoudov in pro.net
Denis Petukhov
А спан можно сделать полем?
Можно сделать гет онли проперти
источник

DP

Denis Petukhov in pro.net
Ilya Chernoudov
Можно сделать гет онли проперти
Ну это еще хуже по перфу
источник