|
|
|
|
#1 |
|
Moderator
|
Цитата:
Сообщение от S.Kuskov
Ясно...
Да, жалко что нет инструмента копирования целиком табличного буфера без разделения на части или перепаковки. UPD: А такого инструмента наверное и не может быть. Ведь наверняка в общем случае буфер временной таблицы хранится фрагментированно совместно с другими данными в куче. И что бы передать его одним куском, этот один кусок сначала нужно собрать, на деле перепаковав табличный буфер в статическую непрерывную структуру вроде контейнера. |
|
|
|
| За это сообщение автора поблагодарили: Logger (2). | |
|
|
#2 |
|
Участник
|
Это я уже понял. Просто хотел уточнить. Для того чтобы чохом передать нужно же и "чохом" хранить? Или не обязательно? Т.е. очень сомнительно, что за один "чох"
можно передать, например, динамическую структуру типа Map? Мне почему-то кажется что должно выполнятся условие размещения данных в одном передаваемом куске памяти. Я ошибаюсь?
|
|
|
|
|
#3 |
|
Участник
|
Цитата:
Сообщение от S.Kuskov
Это я уже понял. Просто хотел уточнить. Для того чтобы чохом передать нужно же и "чохом" хранить? Или не обязательно? Т.е. очень сомнительно, что за один "чох"
можно передать, например, динамическую структуру типа Map? Мне почему-то кажется что должно выполнятся условие размещения данных в одном передаваемом куске памяти. Я ошибаюсь?Либо в памяти (если не очень много успели записать ), либо уже на диске, но все вместеТолько RPC не надо идеализировать ![]() Большие контейнеры тоже будут передавать не целиком за раз, а разбиваться на куски. Соответственно, дополнительных вызовов будет достаточно много. Но, в любом случае, таких обменов будет меньше, чем при условии передачи по каждой отдельной записи
__________________
Axapta v.3.0 sp5 kr2 |
|
|
|
|
#4 |
|
Участник
|
Цитата:
В любом случае, если бы была реализация копировани буфера временной таблицы на уровне ядра системы, то это бы помогло бы избежать ненужных накладных расходов на переупаковку данных и в тоже время не повысила бы Chattiness |
|
|
|
|
#5 |
|
Участник
|
Logger, я всё это прекрасно понимаю. Я лишь хотел убедится, что "НЕ элементарные" типы передать за один/два RPC вызова нельзя. Но после сообщения AndyD
хотелось бы убедится ещё и в том как именно хранится буфер временной таблицы в оперативной памяти. Как строка в одном месте или фрагментировано в разных связанных областях? Для общего развития так сказать. Просто когда представляешь себе как это там на самом деле всё происходит многие вещи становятся понятнее. Например почему таки нельзя просто взять и скопирования буфер временной таблицы так же как строку или контейнер? |
|
|
|
|
#6 |
|
Участник
|
Цитата:
|
|
|
|
|
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|