Zum Beispiel, wenn ich ein Ereignis, das von einer gegebenen Zeituhr kommt, so nahe wie möglich mit einem Timer-orientierten Signal-Handler synchronisiert halten muss, und dafür habe ich entschieden, die Entfernung zwischen Ereignis und Handler jedes Mal zu überprüfen ausgeführt ->
Konnte ich timer_settime() im Signalhandler verwenden, um den nächsten Timerablauf zu aktualisieren und damit meinen zeitgeberorientierten Signalhandler synchronisiert zu halten?Kann ich den Timer in einem Signal-Handler einstellen?
Antwort
Ok, nach einer anderen Forschung, die ich in this answer ein Link zu this part of POSIX specification (IEEE Std 1.003,1-2.008 oder POSIX.1-2008) gefunden.
Die Spezifikation gibt (in System Interfaces->Pointer to a function subsection) eine Liste von async-signal-sicheren Funktionen zur Verwendung in Signalhandlern, und timer_settime() ist Teil von ihnen.
So jetzt betrachte ich mein ganzes Problem (ein bisschen außerhalb des Umfangs dieser Seite) teilweise aufgelöst, weil ich weiß, dass ich timer_settime() im Signalhandler verwenden kann, aber ich weiß nicht, ob "Könnte ich benutze die Funktion und halte so meinen Timer-orientierten Signalhandler mit der 'anderen Quelle' synchronisiert? "< - Das ist, was ich jetzt arbeiten werde :-)
Ich schätze eine andere technische und detaillierte Antwort, obwohl meine Frage hat sich gelöst. Vielen Dank!
- 1. Übergeben von Argumenten an den Signalhandler in C
- 2. Timer für HTTP-Anfrage einstellen
- 3. Einstellen von Variablen mit Timer in JS
- 4. Timer für bestimmte Elemente einstellen
- 5. Wie kann ich den nächsten Tag einstellen?
- 6. Wie kann ich den Kontrast in OpenCV in C einstellen?
- 7. linux/glibc. Kann ich fprintf im Signalhandler verwenden?
- 8. Wie kann ich den Timer in Javascript stoppen?
- 9. Kann ich den asynchronen Timer in PHP verwenden und wie?
- 10. Wie kann ich die Browsergröße in einem Winkelmesser-Test einstellen
- 11. Wie führe ich den Timer in Listview?
- 12. Wie kann ich den Standardbrowser in Windows 10 programmatisch einstellen
- 13. Wie kann ich den Rand eines BorderPane in fxml einstellen?
- 14. Wie kann ich den Anfangseindruck in PhpStorm einstellen?
- 15. Wie kann ich den Status in einer statischen Reaktionsfunktion einstellen?
- 16. iDangerous Swiper, Dias auf verschiedene Timer einstellen
- 17. aio_read innerhalb Signalhandler
- 18. Wie kann ich die Zeitzone in einem einfachen Datumsfeld einstellen?
- 19. Wie kann ich verschiedene Farben in einem ZedGraph Histogramm einstellen?
- 20. Wie kann ich den IME-Modus auf bestimmte TextBox einstellen?
- 21. Wie kann ich Videoquelle in HTML einstellen?
- 22. Der Timer startet nicht, wenn ich den Timer hochfahre.Start() Ereignis
- 23. Wie kann ich NODE_ENV einstellen?
- 24. Wie kann ich den Timer der Dropwizard-Messwerte zurücksetzen?
- 25. Ich kann nicht aufhören Timer
- 26. Wie kann ich einen Timer einstellen, um einen Funktionsaufruf innerhalb einer Schleife zu steuern?
- 27. Wie kann ich den Text eines QT LineEdit einstellen?
- 28. Wie kann ich den Status einer Komponente am Videoende einstellen?
- 29. Wie kann ich den Wert einer Funktion einstellen?
- 30. Wie kann ich den Wert einer Variablen einstellen?