2017-02-17 3 views
-1

Ich würde gerne wissen, wie könnte ich Daten mit SIGUSR1 und SIGUSR2 zu einem anderen Prozess (von einem Terminal zu einem anderen) senden, aber ohne die sigqueue Funktion? Ich habe schon überall im Netz gesucht, aber ich habe keine Antworten auf meine Frage gefunden.Wie sende ich Daten ohne sigqueue?

Danke.

+0

Es gibt viele Möglichkeiten der IPC; Pipes, msgsnd, Sockets, Shared Memory usw. – Ctx

+0

Nur Signale und Signale verwenden? Du kannst nicht. Signale sollten eigentlich keine Möglichkeit sein, Daten zwischen Prozessen zu übertragen. Sie müssen einen anderen Weg finden, die [Interprozesskommunikation] (https://en.wikipedia.org/wiki/Inter-process_communication) zu machen. –

+0

@Someprogrammerdude Dies könnte eine Schulaufgabe sein, hatte die gleiche Art von Frage. Es wurde erwartet, dass wir dies unter Verwendung von Morsecode oder etwas Ähnlichem tun, um der Empfängerseite mitzuteilen, welche Daten dargestellt wurden. Könnte das sein? – NaeiKinDus

Antwort

0

Für eine sehr einfache und grundlegende Lösung könnten Sie die Daten in eine Datei schreiben und dann das Signal an den Prozess senden. Der empfangende Prozess liest dann den Inhalt der Datei und löscht die Datei.

Dies könnte natürlich zu Datenrennen führen, ist aber sehr einfach zu implementieren.

Verwandte Themen