NAME
串流 - 某些基礎儲存空間的可讀取、可寫入和搜尋介面
概要
串流是一種介面,用於讀取資料並將其寫入某些基礎儲存空間,通常是 VMO。
說明
串流會維護對某些基礎儲存空間 (通常是 VMO) 的參照,以及用於定位讀取和寫入作業的跳轉偏移。
有別於 VMO 上的讀取和寫入作業,串流上的讀取和寫入作業可能會很短,因為這類作業在沒有填寫 (或分別清空) 提供的緩衝區時,會順利完成作業。舉例來說,如果讀取作業的執行時間超過 VMO 結尾,讀取作業就會失敗,而延伸至串流結束後的讀取作業則會成功讀取到串流的結尾,且部分填滿緩衝區。
寫入超出基礎儲存空間的結尾,嘗試增加基礎儲存空間的大小,而非立即執行失敗。舉例來說,寫入串流的串流時間超過基礎 VMO 結尾時,系統會嘗試調整 VMO 的大小,而非失敗。如果基礎 VMO 上的調整大小作業失敗,寫入作業可能會變得很短。
音效
zx_stream_create()
- 從 VMO 建立串流zx_stream_readv()
- 依目前跳轉位移讀取串流資料zx_stream_readv_at()
- 在指定偏移處讀取串流資料zx_stream_writev()
- 依目前跳轉位的偏移值將資料寫入串流zx_stream_writev_at()
- 依指定偏移值將資料寫入串流zx_stream_seek()
:修改串流目前的跳轉偏移