ESP32 AsyncWeb

F

fgordon

Gast
Da der ESP32 ja kein Multitasking/-threading in herkömmlichen Sinn kann (hier Nutzung Arduino Basis und kein RTOS) kann man doch die TCP/HTTP-Requests per Design als "Thread-safe" annehmen? Da das Hauprogramm doch immer nur 1x gleichzeitig laufen kann.

Oder sieht da jemand die Notwendigkeit für Semaphoren?
 
Zuletzt bearbeitet von einem Moderator:
Kann es nicht, je nach Implementierung, Interrupts mit entsprechender ISR Ausführung geben? Das würde ja schon das Hauptprogramm stören.
 
Dass Daten extern in einer DB etc oder durch Interrupt geändert werden können ist ja eine andere Baustelle xD.

Thread safe heisst ja nur kann eine 2.Instanz der selben Funktion/Methode etc noch laufen, solange die erste noch läuft.

Die durch Interrupt getriggerten Routinen - soweit ich das getestet habe - sind auf im Arduino FW threadsafe - und können nicht erneut aufgerufen werden, während sie noch vom vorherigen Interrupt laufen - die gehen dann einfach solange verloren.
 
Hmmm ich hab jetztmal 2 Stunden testweise von 3 Rechnern parallel auf den ESP32 WebAsync dauerhaft zugegriffen (also globale Variable auf +1 gestzt bei Eintritt und -1 bei Funktionsende) und hatte nie einen Parallelzugriff (also einen Wert >1) - daher gehe ich zumindest jetzt mit dem Softwarestand von Thread-Safeheit aus xD
 
Zurück
Oben