
2.概述
我們接着往高層抽象走,剛剛提到了最底層記憶體抽象是MemorySegment,用于資料傳輸的是Buffer,那麼,承上啟下對接從Java對象轉為Buffer的中間對象是什麼呢?是
StreamRecord
。
從
StreamRecord
這個類名字就可以看出來,這個類就是個wrap,裡面儲存了原始的Java對象。另外,StreamRecord還儲存了一個timestamp。
那麼這個對象是怎麼變成LocalBufferPool記憶體池裡的一個大号位元組數組的呢?借助了
StreamWriter
這個類。
我們直接來看把資料序列化交出去的方法:
首先是ChannelSelectorRecordWriter一個正常的面向記錄的運作時結果編寫器。
@Override
public void emit(T