|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
щупаю ReadOnlySequence. у меня есть буфер из сети и я читаю в pipe его ну и дальше имею ReadOnlySequence<byte>. мне надо понять что в буфере не мусор а данные определенной структуры допустим для примера (реальные другую имеют) start\n //начало данных (фиксированный маркер) тут какие то данные end\n //конец данных (фиксированный маркер) если мусор я просто сбрасываю буфер за не надобностью. ну есть 2 варика как я вижу 1. через позицию выбирать start и end и выделять промежуточные буфера и тут вообщем то вопрос по топорному позиция? или можно как то приятнее..если кто то покажет пример с выше указанной структурой буду благодарен 2. кастануть в строку и по старинке парсить строку, тут все тривиально. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2021, 16:30 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
handmadeFromRu если мусор я просто сбрасываю буфер за не надобностью. оперируешь методом reader.AdvanceTo(buffer.Start, buffer.End); handmadeFromRu 1. через позицию выбирать start и end и выделять промежуточные буфера и тут вообщем то вопрос по топорному позиция? или можно как то приятнее..если кто то покажет пример с выше указанной структурой буду благодарен в этом и смысл в общем-то, не выделять промежуточные буфера, а говорить ридеру, сколько из прочитанного тебе нужно в конечном счёте. всё ненужное будет выкинуто. что потом делать с этим будешь, хоть кастовать, хоть интеопретировать как utf-8, это уже твоё лично дело :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 11:52 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
handmadeFromRu, вот неплохой (относительно) пост https://www.stevejgordon.co.uk/an-introduction-to-sequencereader ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 11:52 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
hVostt handmadeFromRu, вот неплохой (относительно) пост https://www.stevejgordon.co.uk/an-introduction-to-sequencereader ага утром сегодня открыл для себя SequenceReader и запилил. но считай примерно как по ссылке у меня также пайплан и потоковое считывание в канал ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 13:36 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
handmadeFromRu, Можете описать Вашу задачу, что приходится на таком низком уровне гонять данные по сети? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 13:48 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
vb_sub handmadeFromRu, Можете описать Вашу задачу, что приходится на таком низком уровне гонять данные по сети? потоковое чтение из тсп или ком данных приборов. пайпы + ReadOnlySequence супер мелкая алокация памяти. можно по старинке конечно через стримридер + readline просто если можно сделать лучше чтоб не сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 14:38 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
handmadeFromRu, для потоковой передачи данных не рассматривал вариант с GRPC? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 15:27 |
|
ReadOnlySequence parser
|
|||
---|---|---|---|
#18+
vb_sub handmadeFromRu, для потоковой передачи данных не рассматривал вариант с GRPC? эт штука поверх http работает, а приборы не имеют из себя интерфейса кроме как тсп и ком. так то grpc у нас между сервисами гоняется. может конечно когда то появятся приборы с заложенным grpc ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2021, 15:43 |
|
|
start [/forum/topic.php?fid=18&fpage=4&tid=1354557]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 259ms |
total: | 391ms |
0 / 0 |