ตัวจัดการบัฟเฟอร์แหวนน้ำหนักเบา
ห้องสมุดให้การใช้งานบัฟเฟอร์แหวน FIFO ทั่วไป
อ่านก่อน: เอกสาร
คุณสมบัติ
- เขียนใน C (C11) เข้ากันได้กับ
size_t สำหรับประเภทข้อมูลขนาด - แพลตฟอร์มรหัสเริ่มต้นอิสระ - ด้วยข้อ จำกัด สำหรับสถาปัตยกรรม CPU ขนาดเล็ก (
< sizeof(size_t) ) - การใช้งานบัฟเฟอร์ FIFO (ครั้งแรกในครั้งแรก)
- ไม่มีการจัดสรรหน่วยความจำแบบไดนามิกข้อมูลเป็นอาร์เรย์แบบคงที่
- ใช้สำเนาหน่วยความจำที่ดีที่สุดแทนลูปเพื่ออ่าน/เขียนข้อมูลจาก/ไปยังหน่วยความจำ
- เธรดปลอดภัยเมื่อใช้เป็นท่อที่มีการเขียนเดี่ยวและรายการอ่านเดี่ยว - เมื่อการดำเนินการอ่าน/เขียน CPU สำหรับ
size_t เป็นคำสั่งเดียว (เช่น ARM Cortex -M เช่น) - Interrupt Safe เมื่อใช้เป็นท่อที่มีการเขียนเดี่ยวและรายการอ่านเดี่ยว - เมื่อการดำเนินการอ่าน/เขียน CPU สำหรับ
size_t เป็นคำสั่งเดียว (เช่น ARM Cortex -M เช่น) - สำหรับระบบ CPU ที่มีสถาปัตยกรรมขนาดเล็กกว่า
sizeof(size_t) (AVR) จำเป็นต้องมีการป้องกันอะตอมสำหรับการอ่านการเขียนของบัฟเฟอร์ Writes - เหมาะสำหรับการถ่ายโอน DMA จากและไปยังหน่วยความจำที่มีค่าใช้จ่ายเป็นศูนย์ระหว่างบัฟเฟอร์และหน่วยความจำแอปพลิเคชัน
- รองรับ Data Peek ข้ามเพื่ออ่านและล่วงหน้าสำหรับการเขียน
- ดำเนินการสนับสนุนสำหรับการแจ้งเตือนเหตุการณ์
- ใบอนุญาต MIT ที่เป็นมิตรกับผู้ใช้
มีส่วนช่วย
ยินดีต้อนรับการมีส่วนร่วมใหม่เสมอ คำแนะนำง่ายๆในการดำเนินการ:
- ที่เก็บส้อม GitHub
- ปฏิบัติตามกฎสไตล์และการเข้ารหัสที่ใช้ในโครงการแล้ว
- สร้างคำขอดึงเพื่อพัฒนาสาขาด้วยคุณสมบัติใหม่หรือการแก้ไขข้อบกพร่อง
หรือคุณอาจ:
- รายงานข้อผิดพลาด
- ขอคำขอคุณสมบัติ