Информация об изменениях

Сообщение Re[20]: А чего молчим про Crowdstrike от 30.07.2024 12:04

Изменено 01.08.2024 11:34 vdimas

Re[20]: А чего молчим про Crowdstrike
Здравствуйте, Sinclair, Вы писали:

Вдогонку.

Думаю, твоя проблема в том, что нужную и правильную весчь озвучил твой оппонент, что не позволяет тебе "просто согласиться".


И еще проблема в том, похоже, что ты пятой точкой чувствуешь засаду, стоит тебе со мной согласиться. ))

На самом деле, вопрос, можно сказать, жизненно важный.

Тут даже можно на время перестать бодаться и озвучить прямой речью:
— использование Span делает код выразительным и эффективным, оставляет меньше простора для ошибок, связанных с формированием диапазонов, позволяет проводить достаточно дешевую декомпозицию алгоритмов над данными;
— одновременно с этим, через Span можно нарваться на ошибки неаккуратности, присущие нейтивным программам в деле прохода по памяти.

Q. Как безопасно использовать Span?
A. Абсолютно все методы и методы-расширения AsSpan(range) безопасны для строк, массивов, объектов Memory<> и ArraySegment. Так же безопасны методы самого Span и все прочие объекты/хелперы, которые используют Span через TryRead/TryWrite/TryParse/TryFormat и т.д.

Q. Где можно нарваться на небезопасность даже в случае safe-кода?
A. При использовании для порождения/реинтерпретации ссылок на память с помощью статических методов у типов Unsafe и MemoryMarshal. Здесь ответственность лежит на программисте.
Re[20]: А чего молчим про Crowdstrike
Здравствуйте, Sinclair, Вы писали:

Вдогонку.

Думаю, твоя проблема в том, что нужную и правильную весчь озвучил твой оппонент, что не позволяет тебе "просто согласиться".


И еще проблема в том, похоже, что ты пятой точкой чувствуешь засаду, стоит тебе со мной согласиться. ))

На самом деле, вопрос, можно сказать, жизненно важный.

Тут даже можно на время перестать бодаться и озвучить прямой речью:
— использование Span делает код выразительным и эффективным, оставляет меньше простора для ошибок, связанных с формированием диапазонов, позволяет проводить достаточно дешевую декомпозицию алгоритмов над данными;
— одновременно с этим, через Span можно нарваться на ошибки неаккуратности, присущие нейтивным программам в деле прохода по памяти.

Q. Как безопасно использовать Span?
A. Абсолютно все методы и методы-расширения AsSpan(range) безопасны для строк, массивов, объектов Memory<> и ArraySegment. Также безопасны методы самого Span и все прочие объекты/хелперы, которые используют Span через TryRead/TryWrite/TryParse/TryFormat и т.д.

Q. Где можно нарваться на небезопасность даже в случае safe-кода?
A. При использовании для порождения/реинтерпретации ссылок на память с помощью статических методов у типов Unsafe и MemoryMarshal. Здесь ответственность лежит на программисте.