IIC2233 / Syllabus-2024-1

79 stars 10 forks source link

Duda largo de mensajes comunicación Cliente-servidor #603

Open SebaPassi opened 2 months ago

SebaPassi commented 2 months ago

Prerrequisitos

(Marcar colocando una X entre los corchetes los ítems que ya hiciste, así: "[X]")

Si por ejemplo quiero mandar el tablero actual del jugador "101111111" (que sería un tablero de 3x3 donde se comió una lechuga) para que el servidor revise si está correcto o no, ¿el largo del mensaje que se debe mandar según el método de codificación es len(pickle.dumps("101111111")).to_bytes(4, 'big')?

¿O debo primero formar todo el bytearray según el método de codificación (agregando los bytes del número del bloque y bytes ceros si son necesarios) y ahí calcular el largo de eso y mandarlo?

No sé si se entendió

Gracias!

lucolhabe commented 2 months ago

Hola @SebaPassi, el largo del mensaje es el largo original de la codificación a bytes. Por lo que se calcula antes de añadir los 0 y los indicadores del numero del bloque, te recomiendo revisar la issue #569 donde se explica mas a detalle.