I would like to have an API for primitive types of repeated fields, in order to efficiently set them. The reason I need this is that I am transferring a large array of floats (representing the pixels of a thermal image), and would be happier if there was no need to box each float before adding it to the protobuf.
Ideally, the protobuf would just provide a function addAllBuffer(float[] data) in addition to the current iterator based APIs. Currently, all of the APIs for adding an array involve boxing the data at some point or another.
The system setup is a little bit odd, since the grpc server is actually running on an android device, but I think this request applies in general.
Should this be an issue in the gRPC issue tracker?
This is a new feature request. Also, I was asked to file an issue by @ejona86.
What version of gRPC and what language are you using?
I am using Java. The desired API is not present in all versions, as far as I am aware.
What operating system (Linux, Windows, …) and version?
Android (Linux), targeting Android 6.
Yes, I would also like to switch to a newer version.
What runtime / compiler are you using (e.g. python version or version of gcc)
Android Studio, with current versions of the toolchain.
What did you expect to see?
An efficient, boxing-free, method of adding a large array of primitives to a protobuf.
What did you see instead?
http://cdn3.meme.am/cache/instances/folder113/500x/63531113/x-x-everywhere-boxing-boxing-everywhere.jpg
I would like to have an API for primitive types of repeated fields, in order to efficiently set them. The reason I need this is that I am transferring a large array of floats (representing the pixels of a thermal image), and would be happier if there was no need to box each float before adding it to the protobuf.
Ideally, the protobuf would just provide a function
addAllBuffer(float[] data)in addition to the current iterator based APIs. Currently, all of the APIs for adding an array involve boxing the data at some point or another.The system setup is a little bit odd, since the grpc server is actually running on an android device, but I think this request applies in general.
Should this be an issue in the gRPC issue tracker?
This is a new feature request. Also, I was asked to file an issue by @ejona86.
What version of gRPC and what language are you using?
I am using Java. The desired API is not present in all versions, as far as I am aware.
What operating system (Linux, Windows, …) and version?
Android (Linux), targeting Android 6.
Yes, I would also like to switch to a newer version.
What runtime / compiler are you using (e.g. python version or version of gcc)
Android Studio, with current versions of the toolchain.
What did you expect to see?
An efficient, boxing-free, method of adding a large array of primitives to a protobuf.
What did you see instead?
http://cdn3.meme.am/cache/instances/folder113/500x/63531113/x-x-everywhere-boxing-boxing-everywhere.jpg