🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1016

Re: Neuen Prozess starten und weiterlaufen?

#1016
From: Joerg Koenig
Date: Fri, 15 Dec 1995 09:26
53 lines
1824 bytes
In article <4ambqh$5eh@trumpet.uni-mannheim.de>, vogt@pi1.uni-mannheim.de (Torsten Vogt) says:
>#include <stdlib.h>
>#include <unistd.h>
>#include <stdio.h>
>
>int main(int ac, char *av[]) {
>  
>  int STDIN  = stdin->_file;
>  int STDOUT = stdout->_file;

int STDIN = fileno( stdin ) ; /* ist um Klassen portabler */
Ueberhaupt werden die beiden Variablen nicht gebraucht. Sie machen das
Beispiel unnoetig unuebersichtlich.

>  
>  int  i,rtc,fd[2],pid,n;
>  char ttyn1[80];
>  char *tav[20];
>  
>  rtc=pipe(fd);                                    /* Pipe zur IPK anlegen */
>  
>  if ((pid=fork()) != 0) {
>  /* Elternprozess */

Elternprozess ja, aber wenn fork() einen Fehler zurueckliefert sollte man
nicht so tun als waere alles in Ordnung...

>  
>    close(STDOUT); STDOUT=dup(fd[0]);              /* STDIN u. STDOUT     */
>    close(STDIN);  STDIN=dup(fd[1]);               /* umbiegen            */
>    close(fd[0]);  close(fd[1]);
>    
>    /* Pipe in beide Richtungen testen */
>    printf("Die Pipe funktioniert in Richtung: Parent -> Child \n"); fflush(stdo
>ut);
>    fgets(ttyn1,80,stdin);
>    fprintf(stderr,"%s",ttyn1);
>
>    wait(&pid);  /* Auf Termination von Child warten */
> 
>    fprintf(stderr,"Parent und Child beendet!\n"); 
>  }
>  else {
>  /* Kindprozess */


Ausserdem - was hat das ganze mit C++ zu tun ?!


>Gruss Torsten
>

	Joerg
Technical Details
Message-ID: <4arf08$pm2@alpha.adg.de>
Path: arc1-ca.pugleaf.net!alpha.adg.de!usenet
References: <4ambqh$5eh@trumpet.uni-mannheim.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!alpha.adg.de!usenet
From: Joerg.Koenig@adg.de (Joerg Koenig)
Newsgroups: de.comp.lang.c++
Subject: Re: Neuen Prozess starten und weiterlaufen?
Date: 15 Dec 1995 09:26:32 GMT
Organization: Apotheken Dienstleistungs Gesellschaft mbH
Message-ID: <4arf08$pm2@alpha.adg.de>
References: <4ambqh$5eh@trumpet.uni-mannheim.de>
NNTP-Posting-Host: rincewind.adg.de
X-Newsreader: WinVN 0.92.6+