Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
zentrale MQTT Agentenbibliothek
Anmerkung
Der Inhalt dieser Seite ist möglicherweise nicht. up-to-date Das neueste Update finden Sie auf der Seite der RTOS Free.org-Bibliothek
Einführung
Die zentrale MQTT Agentenbibliothek ist auf hohem Niveau API und bietet zusätzliche Thread-SicherheitMQTTKernbibliothek. Damit können Sie eine spezielle MQTT Agententask erstellen, die eine MQTT Verbindung im Hintergrund verwaltet und keine Eingriffe durch andere Aufgaben erfordert. Die Bibliothek bietet Thread-sichere Entsprechungen zu den MQTT CoresAPIs, sodass sie in Umgebungen mit mehreren Threads verwendet werden kann.
Der MQTT Agent ist eine unabhängige Aufgabe (oder ein Ausführungsthread). Er gewährleistet Thread-Sicherheit, da er die einzige Aufgabe ist, die auf die Aufgabe der MQTT Bibliothek zugreifen darfAPI. Sie serialisiert den Zugriff, indem sie alle MQTT API Aufrufe einer einzelnen Aufgabe isoliert und Semaphoren oder andere Synchronisationsprimitive überflüssig macht.
Die Bibliothek verwendet eine Thread-sichere Messaging-Warteschlange (oder einen anderen Mechanismus für die Kommunikation zwischen Prozessen), um alle Aufrufanforderungen zu serialisieren. MQTT APIs Die Messaging-Implementierung ist über eine Messaging-Schnittstelle von der Bibliothek entkoppelt, sodass die Bibliothek auf andere Betriebssysteme portiert werden kann. Die Messaging-Schnittstelle besteht aus Funktionen zum Senden und Empfangen von Zeigern auf die Befehlsstrukturen des Agenten und Funktionen zur Zuweisung dieser Befehlsobjekte, sodass der Anwendungsautor die für seine Anwendung geeignete Speicherzuweisungsstrategie festlegen kann.
Die Bibliothek ist in C geschrieben und so konzipiert, dass sie mit ISOC90 und C:2012
Diese Bibliothek kann frei verwendet werden und wird unter der MITOpen-Source-Lizenz
Codegröße des MQTT Core-Agenten (Beispiel generiert mit GCC für ARM Cortex-M) | ||
---|---|---|
Datei | Mit -O1-Optimierung | Mit -Os-Optimierung |
core_mqtt_agent.c | 1,7 K | 1,5 K |
core_mqtt_agent_command_functions.c | 0,3 K | 0,2 K |
core_mqtt.c (Kern) MQTT | 4,0 K | 3,4 K |
core_mqtt_state.c (Kern) MQTT | 1,7 K | 1,3 K |
core_mqtt_serializer.c (Kern) MQTT | 2,8K | 2,2 K |
Schätzungen insgesamt | 10,5 K | 8,6 K |