Domanda

C'è una penalizzazione delle prestazioni per chiamare getSerializedSize() su un messaggio GPB prima di serializzazione il messaggio con writeTo(OutputStream)?

Ho bisogno di essere in grado di conoscere le dimensioni di un messaggio prima di scrivere ad un flusso di output.

Sto usando GPB su Java.

È stato utile?

Soluzione

Non v'è alcuna penalizzazione delle prestazioni. Dal secondo messaggio di questa discussione sulla mailing Protobuf lista:

  

È possibile chiamare getSerializedSize () per scoprire la dimensione del messaggio prima del tempo.    Si noti che la chiamata a questo in realtà non perde tempo in quanto il risultato è   cache, e avrebbe dovuto essere chiamato durante la serializzazione in ogni caso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top