Leichter Ringpuffermanager
Die Bibliothek bietet eine generische Implementierung von FIFO -Ringpuffer.
Lesen Sie zuerst: Dokumentation
Merkmale
- Geschrieben in C (C11), kompatibel mit
size_t für Größendatentypen - Plattform unabhängiger Standardcode - mit Einschränkungen für kleinere CPU -Architekturen (
< sizeof(size_t) ) - FIFO -Puffer -Implementierung (zuerst in erster Out)
- Keine dynamische Speicherzuweisung, Daten sind statisches Array
- Verwendet eine optimierte Speicherkopie anstelle von Schleifen, um Daten aus/zum Speicher zu lesen/zu schreiben
- Thread sicher, wenn sie als Rohr mit einzelnen Schreib- und Einzellesereinträgen verwendet werden - wenn die CPU -Lese-/Schreibvor Operation für
size_t eins Anweisungen sind (beispielsweise ARM -Cortex -M) - Safed unterbrechen, wenn sie als Rohr mit einzelnen Schreib- und Einzellesereinträgen verwendet werden - wenn die CPU -Lese-/Schreibvor Operation für
size_t ein einzelner Anweisungen sind (beispielsweise ARM -Cortex -M) - Für CPU-Systeme mit kleinerer Architektur als
sizeof(size_t) (AVR) ist ein Atomschutz für den Messschreiber von Puffer-Schreibvorgängen erforderlich - Geeignet für DMA-Übertragungen aus und zum Speicher mit Null-Kopie-Overhead zwischen Puffer und Anwendungsspeicher
- Unterstützt Data Peek, überspringen Sie für das Lesen und Fortschritt zum Schreiben
- Implementierung der Unterstützung für Ereignisbenachrichtigungen
- Benutzerfreundliche MIT -Lizenz
Beitragen
Frische Beiträge sind immer willkommen. Einfache Anweisungen zum Fortfahren:
- Fork Github -Repository
- Befolgen Sie den bereits im Projekt verwendeten C -Stil- und Codierungsregeln
- Erstellen Sie eine Pull -Anfrage, um Filialen mit neuen Funktionen oder Fehlerbehebungen zu entwickeln
Alternativ können Sie:
- Einen Fehler melden
- Fragen Sie nach einer Feature -Anfrage