Re: Nebenlaeufigkeit programmieren

From: Bernd Walter <ticso(at)cicely9.cicely.de>
Date: Fri, 14 Feb 2003 17:55:13 +0100

On Fri, Feb 14, 2003 at 05:33:45PM +0100, Marc Santhoff wrote:
> Ich brauche mal ein RTFM oder Denkanstöße für folgendes Problem:
>
> Ein (Userland)Programm soll zwei Aufgaben quasi-parallel erledigen.
> Dabei handelt es sich um eine lesende Datensammlung (mit select) und die
> asynchrone Aufbereitung der gelesenen Daten mit Bidschirmausgabe.

Warum muß die Aufbereitung der Daten asyncron vom Empfang passieren?
Braucht die Aufbereitung so lange?

> Früher unter Windows[tm] hätte ich den Delphi-Compiler angeworfen und
> ein Thread-Objekt für die nachrangige Aufgabe abgeleitet. Nun kennt
> FreeBSD auch threads, und man kann die fork'e benutzen ... jedenfalls
> wird in C geschrieben.
>
> Welche Möglichkeiten gibt es?
>
> Welche ist für diesen Fall am besten?

Fork wäre am Effizientesten, aber erfordert mehr Detail-Kenntnisse.
Mit Threads lässt sich das wohl schneller realisieren.

> Wo finde ich ergänzende Dokumentation?

pthread(3)
Viel wirst du wohl nicht brauchen.
Nur einen Thread starten und ein paar locks um den Übergabebereich.

Wenn du dich länger mit Threads beschäftigen willst:
Programming with POSIX threads von David R. Butenhof.
ISBN 0-201-63392-2

Für die Fork Variante:
Advanced Programming in the UNIX Environment von W. Richard Stevens
ISBN 0-201-56317-7

> Ich will natürlich keinen klassizistischen Altar der Programmierkunst
> errichten, sondern eine möglichst knappe, effiziente Lösung finden. ;-)

Dann sollte die Manpage wohl reichen.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
ticso(at)cicely.de         Usergroup           info(at)cosmo-project.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 14 Feb 2003 - 17:55:26 CET

search this site