Как сжать List<byte>

261
15 декабря 2017, 00:25

Во что лучше сжать List, чтобы передать по RPC unity - как таковой list по RPC не передать

Answer 1

Окей, у меня нет опыта с Unity3d, так что попытаюсь ответить насколько сам понимаю.

Если вам нужно передавать данные сложного типа, а интерфейс принимает только простой, то нужно данные сериализовать в строку перед передачей, и десериализовать после получения.

Например, популярным способом сериализации является сериализация в JSON через JSON.NET. Ваш код будет выглядеть так:

List<int> list = ...;
string content = JsonConvert.SerializeObject(list);
servermanager.networkview.RPC("TEST", this.networkplayer, content);

На принимающей стороне

string content = ...;
List<int> list = JsonConvert.DeserializeObject<List<int>>(content);

Это может, однако, замедлить программу по сравнению с бинарной передачей, если она поддерживается. Попробуйте!

С другой стороны, NetworkView.RPC — устаревшее API. Возможно, имеет смысл перейти на новое API, а не бороться с проблемами старого.

READ ALSO
Xamarin.Forms - Как удалить элемент из ListView

Xamarin.Forms - Как удалить элемент из ListView

В общем есть часть кода, которая использует ListViewНадо каким-то образом удалить элемент из ListView так, чтобы сразу строка удалилась

421
Умножение многочленов

Умножение многочленов

Добрый деньНеобходимо переопределить операцию умножения для класса полином

249
Selenium chrome driver --headless Как использовать свои куки?

Selenium chrome driver --headless Как использовать свои куки?

Актуально - весь интернет проштудировал в RU сегменте и ничего не нашёл(

248
Вызов js методов из .net приложения

Вызов js методов из .net приложения

Имеется основной веб проект написанный на java иnet приложение на winforms

270