ByteSequenceTensorBuffer

ByteSequenceTensorBuffer คลาสสาธารณะ

บัฟเฟอร์สำหรับจัดเก็บข้อมูลเทนเซอร์สตริง

ค่าจะถูกจัดเก็บเป็นอาร์เรย์ของ TF_TString ซึ่งห่อภายในด้วย tensorflow::tstring ซึ่งเป็นเวอร์ชันพกพาของ std::string

ข้อมูลของบัฟเฟอร์จะต้องเริ่มต้นได้เพียงครั้งเดียว โดยการเรียก ERROR(/#init(NdArray, Function)) และบัฟเฟอร์จะต้องได้รับการจัดสรรโดยมีพื้นที่เพียงพอ (ใช้ ERROR(/#computeSize(NdArray, Function)) ลำดับความสำคัญ ทราบแน่ชัดว่าต้องเก็บข้อมูลกี่ไบต์)

หลังจากที่ข้อมูลได้รับการเตรียมใช้งานแล้ว บัฟเฟอร์จะเป็นแบบอ่านอย่างเดียว เนื่องจากไม่สามารถเปลี่ยนค่าได้อย่างปลอดภัยโดยไม่ต้องเตรียมข้อมูลใหม่ทั้งหมด

วิธีการสาธารณะ

คงที่ <T> ยาว
computeSize ( ByteSequenceProvider <?> byteSequenceProvider)
คำนวณจำนวนไบต์ที่จำเป็นในการจัดเก็บข้อมูลที่กำหนดในบัฟเฟอร์สตริง
DataBuffer <ไบต์[]>
copyTo ( DataBuffer <byte[]> dst ขนาดยาว)
เขียนการอ้างอิงของออบเจ็กต์ในอาร์เรย์ต้นทางลงในบัฟเฟอร์นี้
ไบต์[]
getObject (ดัชนีแบบยาว)
<T> ถือเป็นโมฆะ
init ( ByteSequenceProvider <T> byteSequenceProvider)
เตรียมใช้งานข้อมูลของบัฟเฟอร์นี้
บูลีน
DataBuffer <ไบต์[]>
setObject (ค่าไบต์ [] ดัชนีแบบยาว)
ยาว
DataBuffer <ไบต์[]>
ชิ้น (ดัชนียาว, ขนาดยาว)

วิธีการสืบทอด

วิธีการสาธารณะ

ขนาดการคำนวณ แบบคงที่สาธารณะ ( ByteSequenceProvider <?> byteSequenceProvider)

คำนวณจำนวนไบต์ที่จำเป็นในการจัดเก็บข้อมูลที่กำหนดในบัฟเฟอร์สตริง

พารามิเตอร์
byteSequenceProvider สร้างลำดับของไบต์
การส่งคืน
  • จำนวนไบต์ที่ต้องใช้ในการจัดเก็บข้อมูล

DataBuffer สาธารณะ <byte[]> copyTo ( DataBuffer <byte[]> dst ขนาดยาว)

เขียนการอ้างอิงของออบเจ็กต์ในอาร์เรย์ต้นทางลงในบัฟเฟอร์นี้

หากมีค่าที่จะคัดลอกมากกว่าขนาดบัฟเฟอร์ปลายทาง เช่น size > dst.size() จะไม่มีการถ่ายโอนค่าใด ๆ และ BufferOverflowException จะถูกส่งออกไป ในทางกลับกัน หากมีค่ามากกว่าที่จะคัดลอกขนาดบัฟเฟอร์ต้นทาง เช่น > src.size() ดังนั้น BufferUnderfloatException จะถูกส่งออกไป

มิฉะนั้น วิธีการนี้จะคัดลอกค่า n = size จากบัฟเฟอร์นี้ไปยังบัฟเฟอร์ปลายทาง

พารามิเตอร์
วันเวลา บัฟเฟอร์ปลายทางที่จะคัดลอกค่า ต้องไม่ใช่บัฟเฟอร์นี้
ขนาด จำนวนค่าที่จะคัดลอกไปยังบัฟเฟอร์ปลายทาง
การส่งคืน
  • บัฟเฟอร์นี้

ไบต์สาธารณะ [] getObject (ดัชนีแบบยาว)

โมฆะสาธารณะ init ( ByteSequenceProvider <T> byteSequenceProvider)

เตรียมใช้งานข้อมูลของบัฟเฟอร์นี้

แม้ว่าจะไม่มีการบังคับใช้ทางโปรแกรม แต่ก็จำเป็นที่วิธีนี้จะถูกเรียกเพียงครั้งเดียวหลังจากการสร้างบัฟเฟอร์ บัฟเฟอร์จะต้องได้รับการจัดสรรตามชุดข้อมูลเดียวกัน โดยเรียก ERROR(/#computeSize(NdArray, Function)) Priory เพื่อให้แน่ใจว่ามีพื้นที่เพียงพอสำหรับจัดเก็บ

พารามิเตอร์
byteSequenceProvider สร้างลำดับไบต์เพื่อใช้เป็นข้อมูลเทนเซอร์

บูลีนสาธารณะ คือReadOnly ()

DataBuffer สาธารณะ <ไบต์ []> setObject (ค่าไบต์ [] ดัชนีแบบยาว)

ขนาด ยาวสาธารณะ ()

สาธารณะ DataBuffer <byte[]> ชิ้น (ดัชนีแบบยาว, ขนาดยาว)