Necesita explicación de la transferencia de datos binarios usando Thrift rpc

Digamos que definí después del servicio Thrift

service FileResource {      
binary get_file(1:string file_name)
}

Aquí está la implementación generada que no puedo entender

public ByteBuffer recv_get_file() throws org.apache.thrift.TException
{
  org.apache.thrift.protocol.TMessage msg = iprot_.readMessageBegin();
  if (msg.type == org.apache.thrift.protocol.TMessageType.EXCEPTION) {
    org.apache.thrift.TApplicationException x = org.apache.thrift.TApplicationException.read(iprot_);
    iprot_.readMessageEnd();
    throw x;
  }
  if (msg.seqid != seqid_) {
    throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.BAD_SEQUENCE_ID, "get_file failed: out of sequence response");
  }
  get_file_result result = new get_file_result();
  result.read(iprot_);
  iprot_.readMessageEnd();
  if (result.isSetSuccess()) {
    return result.success;
  }
  throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "get_file failed: unknown result");
}

¿Cómo funciona la cadena?

 result.read(iprot_);

? ¿Es síncrono o asíncrono? ¿Cómo funcionará para datos grandes (varios megabytes y más)? ¿Y qué necesito para leer esos datos? Lamentablemente no estoy acostumbrado a trabajar con java.nio y ByteBuffer. Cualquier ejemplo o guía sería bueno.

Respuesta 1

Descubrí que la clase GeneralPath en Java solo proporciona métodos para verificar si un punto está dentro de una ruta general (para ser específico, un polígono con segmentos de línea recta). ¿Alguien sabe cómo ...

Estoy tratando de configurar un servidor de aplicaciones para ejecutar un sitio web simple y una aplicación cliente Java que necesita comunicarse de nuevo con un servidor Java. Lo que me gustaría hacer es lo siguiente: sitio web / web ...

He reunido un programa simple que usa reemplazo de fragmentos con una sola actividad y dos fragmentos. Un fragmento tiene un botón que, cuando se presiona, reemplaza el fragmento con un segundo fragmento ...

En mi aplicación estoy usando un código como el siguiente para descargar varias imágenes. ¿Es de alto rendimiento hacerlo así o puedo reutilizar la conexión de alguna manera? for (int i = 0; i <100; i ++) {URL ...