Size: a a a

2020 January 31

VO

Vitaliy Orlov in pro.net
👍
источник

E

EgorBo in pro.net
ехал спан через спан
источник

E

EgorBo in pro.net
писать в стрим по байту — это такое
источник

vl

vova lantsov in pro.net
EgorBo
писать в стрим по байту — это такое
Зато без аллокаций
источник

vl

vova lantsov in pro.net
источник

IC

Ilya Chernoudov in pro.net
vova lantsov
string s = "lol";
var charMem = s.AsMemory();
var byteMem = Unsafe.As<ReadOnlyMemory<char>, ReadOnlyMemory<byte>>(ref charMem);
Span<byte> resultSpan = byteMem.Span;

foreach (byte b in resultSpan)
{
 stream.WriteByte(b);
}
смысл не в том, чтобы писать, а чтобы читать
источник

IC

Ilya Chernoudov in pro.net
можно вообще сделать GetUnderlyingArray и ебануть его в MemoryStream
источник

DB

Dmitry Babushkin in pro.net
vova lantsov
string s = "lol";
var charMem = s.AsMemory();
var byteMem = Unsafe.As<ReadOnlyMemory<char>, ReadOnlyMemory<byte>>(ref charMem);
Span<byte> resultSpan = byteMem.Span;

foreach (byte b in resultSpan)
{
 stream.WriteByte(b);
}
А в данном случае таки будет аллокация или мы зафаршмачим интерниированную строку?
источник

E

EgorBo in pro.net
Dmitry Babushkin
А в данном случае таки будет аллокация или мы зафаршмачим интерниированную строку?
AsMemory — аллокация
источник

DB

Dmitry Babushkin in pro.net
Эх
источник

E

EgorBo in pro.net
я имею ввиду аллокация самого объекта Мемори
источник

E

EgorBo in pro.net
контент строки никуда не будет копироваться
источник

E

EgorBo in pro.net
мемори в отличие от спана живет в хипе = привет гц
источник

DB

Dmitry Babushkin in pro.net
Хм, тоесть мы все-таки изменим константную строку?
источник

E

EgorBo in pro.net
если очень хочется - то да
источник

E

EgorBo in pro.net
но у тебя там ReadOnlyMemory
источник

E

EgorBo in pro.net
его нельзя менять
источник

DB

Dmitry Babushkin in pro.net
Ага, принято.
источник

vl

vova lantsov in pro.net
EgorBo
но у тебя там ReadOnlyMemory
Ставим Memory и готово
источник

vl

vova lantsov in pro.net
ReadOnlyMemory и Memory по сути одинаковые, поэтому можно из одного преобразовать в другое
источник