[BraLUG] fileevent (TCL) in C implementieren

Michael Wirtz mic at in-brandenburg.de
Mo Mai 29 13:32:44 CEST 2006


Hallo Uwe,

[..]
> Zyklisch soll etwas über die SS gesendet werden. Wenn etwas über die
> SS reinkommt, soll eine Prozedure angesprungen werden, die die Daten 
> einliest und verarbeitet.
> Wie macht man das?

Erstmal muss man eine SS anlegen:
http://tinyurl.com/osh5c

Tut mir leid, aber das war eine unwiderstehliche Vorlage... ;)

> Unter TCL gibt es die Funktion fileevent. Übergabeparameter sind u.a.
> ein Filediskriptor (fd=open(dateiname, read_write)) und eine
> Funktion, die aufgerufen wird, wenn z.B. etwas in die Datei
> reingeschrieben wird. Nach dem Aufruf von fileevent läuft das
> eigentliche Programm weiter und wird nur dann unterbrochen, wenn
> besagtes Ereignis auftritt.
> 
> Gleiches möchte ich gern in C programmieren.

Um mal so aus dem Bauch noch was zur Sache zu sagen: Wahrscheinlich
musst du selbst eine Überwacherfunktion für die Schnittstelle schreiben.
Sozusagen ein eigenes "fileevent". Die Tcl-Funktion scheint mir eine
etwas höhere Abstraktionsebene zu haben, als C zur Verfügung stellt...

Mic




Mehr Informationen über die Mailingliste Bralug