Ho due buffer di rete definita come:Come copiare un buffer bytearray python?
buffer1 = bytearray(4096)
buffer2 = bytearray(4096)
Qual è il modo più veloce per spostare i contenuti da buffer2
a buffer1
senza allocare memoria aggiuntiva?
Il modo più semplice sarebbe quello di fare:
for i in xrange(4096):
buffer1[i] = buffer2[i]
A quanto pare se lo faccio buffer1[:]=buffer2[:]
pitone sposta il contenuto, ma non sono sicuro al 100% di essa, perché se lo faccio:
a = bytearray([0,0,0])
b = bytearray([1,1])
a[:]=b[:]
quindi len(a)=2
. Cosa succede con il byte mancante? Qualcuno può spiegare come funziona o come spostare i dati tra i buffer?
Grazie.
Penso che quello che stai facendo nel tuo primo codice è "sposta il contenuto da buffer2 a buffer1", non il contrario. – jadkik94
grazie @ jadkik94, corretto. – josgek