-1
對於java數組最大的問題,它們需要複製才能編輯。 我正在使用AMD Aparapi,我從我的計算中獲取字節數組。 我需要展示的字節數組作爲字節緩衝區「不復制」Java字節數組以ByteBuffer或ByteBuffer來進行字節數組轉換「沒有複製」
byte aparapiData[];
ByteBuffer buffer;
...
//here bytebuffer
buffer.clear();
buffer.put(aparapiData);
buffer.flip();
socket.write(buffer);
這裏的問題上的代碼,buffer.put正在複製字節數組的ByteBuffer。 而且還有相反的問題將字節數組轉換爲bytebuffer。
他們確實需要複製數據嗎? 我可以在C++上發送純數據而無需複製。
我該如何解決Java上的這個問題?
爲什麼不''socket.write(aparapiData)'? – immibis
'byte aparapiData []'應該是'byte [] aparapiData';它是一個數組的事實是數據類型的一部分,而不是名稱。 –
Java數組不需要'複製來編輯'。沒有人強迫你使用NIO頻道。你真正的問題是什麼? – EJP