diff options
| author | Thorsten Töpper <atsutane@freethoughts.de> | 2011-01-10 21:00:24 +0100 |
|---|---|---|
| committer | Thorsten Töpper <atsutane@freethoughts.de> | 2011-01-10 21:00:24 +0100 |
| commit | af86619723127c8404d3986551b3fd72934d58be (patch) | |
| tree | 06024e8a4c8e86ed14a23878a57e40b69ce6b85b | |
| parent | 8f1c2cb3997af5632bf447ebc3c7c85b8b4deca6 (diff) | |
| download | prozesskommunikation-af86619723127c8404d3986551b3fd72934d58be.tar.gz prozesskommunikation-af86619723127c8404d3986551b3fd72934d58be.tar.bz2 | |
Aufgabe 2: ungenutzte Pipe-Enden schließen.
| -rw-r--r-- | aufgabe2/conv.c | 6 | ||||
| -rw-r--r-- | aufgabe2/log.c | 8 | ||||
| -rw-r--r-- | aufgabe2/monitor.c | 7 | ||||
| -rw-r--r-- | aufgabe2/statistic.c | 7 |
4 files changed, 28 insertions, 0 deletions
diff --git a/aufgabe2/conv.c b/aufgabe2/conv.c index 1c2e1b5..6a433fb 100644 --- a/aufgabe2/conv.c +++ b/aufgabe2/conv.c @@ -14,6 +14,12 @@ FILE *pipe_stat; void conv() { int random_number = 0; + /* ungenutzte Pipeköpfe schließen */ + close(queue[D_CONV_TO_LOG][READ]); + close(queue[D_CONV_TO_STAT][READ]); + close(queue[D_STAT_TO_MON][READ]); + close(queue[D_STAT_TO_MON][WRITE]); + printf("conv started\n"); /* Die beiden Pipes zum schreiben öffnen */ diff --git a/aufgabe2/log.c b/aufgabe2/log.c index 14684ce..779b25b 100644 --- a/aufgabe2/log.c +++ b/aufgabe2/log.c @@ -13,6 +13,14 @@ FILE *logfile; char *message; void log() { + /* ungenutzte Pipeköpfe schließen */ + close(queue[D_CONV_TO_LOG][WRITE]); + close(queue[D_CONV_TO_STAT][READ]); + close(queue[D_CONV_TO_STAT][WRITE]); + close(queue[D_STAT_TO_MON][READ]); + close(queue[D_STAT_TO_MON][WRITE]); + + printf("log started\n"); /* Die Pipe zum lesen öffnen */ diff --git a/aufgabe2/monitor.c b/aufgabe2/monitor.c index cb7ed29..b07cec6 100644 --- a/aufgabe2/monitor.c +++ b/aufgabe2/monitor.c @@ -14,6 +14,13 @@ char *message; void monitor() { int buffer; + /* ungenutzte Pipeköpfe schließen */ + close(queue[D_CONV_TO_LOG][READ]); + close(queue[D_CONV_TO_LOG][WRITE]); + close(queue[D_CONV_TO_STAT][READ]); + close(queue[D_CONV_TO_STAT][WRITE]); + close(queue[D_STAT_TO_MON][WRITE]); + printf("monitor started\n"); /* Die Pipe zum lesen öffnen */ diff --git a/aufgabe2/statistic.c b/aufgabe2/statistic.c index 31230cf..1b6c234 100644 --- a/aufgabe2/statistic.c +++ b/aufgabe2/statistic.c @@ -15,6 +15,13 @@ char *message; void statistic() { int current_value = 0, last_value = 0, result; + /* ungenutzte Pipeköpfe schließen */ + close(queue[D_CONV_TO_LOG][READ]); + close(queue[D_CONV_TO_LOG][WRITE]); + close(queue[D_CONV_TO_STAT][WRITE]); + close(queue[D_STAT_TO_MON][READ]); + + printf("statistic started\n"); /* Die Pipe zum conv Prozess lesend öffnen, die zum monitor schreibend */ |
