Re[4]: Интеграция с C++
От: _NN_  
Дата: 01.07.21 11:42
Оценка:
Здравствуйте, Mr.Delphist, Вы писали:

MD>Здравствуйте, andsm, Вы писали:


A>>То, что это технически возможно, это-то понятно.

A>>Тут хочется понять, какие потенциально могут быть проблемы.
A>>Unmanaged часть данных — это примерно 50 Гб.
A>>Managed часть, если ее делать принимает запросы по gRPC, вызывает Unmanaged c полученными параметрами, отдает ответ.
A>>Получает сообщения от Кафки, передает в unmanaged.
A>>Запрашивает снапшоты данных на старте, у других сервисов, отдает в unmanaged. Ну и еще тут же всякие метрики и Prometheus.
A>>Т.е. managed объекты долго не живут, объемы незначительны.

MD>Тогда в целом всё выглядит очень ОК. Главное чтобы все эти гигабайты лились сразу в unmanaged-память, и из неё же прямиком брались при отправке в gRPC.

Тут не всё так просто.
Передать массив туда обратно без лишней копии это просто:

byte myarray = new byte[1024*1024];
fixed (byte* ptr = myarray)
{
  CallCpp(ptr);
}



Это подходящий вариант ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.