Apache Ignite C ++ Thin Client: Как мне поместить / получить байтовый массив? - PullRequest
0 голосов
/ 24 сентября 2019

Как правильно хранить двоичный массив в Ignite C ++ и получать его?

Я использую клиентскую библиотеку Apache Ignite C ++ Thin.Я прочитал несколько примеров и вижу, что вы можете специализировать шаблон BinaryType для пользовательских классов link , но я надеюсь, что в Ignite уже есть класс для обработки стандартных буферных классов (например, std :: vector).

Вот пример кода того, что я пытаюсь сделать:

void test() {
  ignite::thin::IgniteClientConfiguration cfg;
  cfg.SetEndPoints("127.0.0.1:10800");
  ignite::thin::IgniteClient client = ignite::thin::IgniteClient::Start(cfg);

  ignite::thin::cache::CacheClient<std::string, std::vector<char>> cacheClient;
  cacheClient =
          client.GetOrCreateCache<std::string, std::vector<char>>("BinaryCache");
  std::vector vector[10];
  cacheClient.Put("Key1", vector);
  cacheClient.Get("Key1");


}

1 Ответ

1 голос
/ 25 сентября 2019

Нет, для стандартных контейнеров нет ручки.Вы должны использовать пользовательский класс, который содержит массив в качестве своего поля, а затем записать его, используя метод BinaryWriter.WriteArray().

...