X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fprocess2.c;h=b6dff4b8d2fa0703405cf9ee49e97793ee01d5e3;hb=aaee22da13ed0c8d7b85f22c58ff31a7fc346f25;hp=327ad8e1a6121f450cee410ee7e0de2d3c62b910;hpb=d9503d0855f3cc3b422c496dfa01b56eb6cee357;p=wsti_so.git diff --git a/src/process2.c b/src/process2.c index 327ad8e..b6dff4b 100644 --- a/src/process2.c +++ b/src/process2.c @@ -17,12 +17,24 @@ int main(void) { /** Named pipe used to communicate with process3 */ char * write_pipe = "/tmp/process2pipe"; + /** Descriptor of input pipe */ int read_descriptor; + + /** Descriptor of output pipe */ int write_descriptor; - + + /** + * Buffer used for storing data from input pipe. + * Data is stored in chunks of BUFFER_STEP size. + * If data during reading is bigger than this value, then number of + * characters is saved, and buffer is cleared for reading another chunk. + */ char buffer[BUFFER_STEP]; - + + /** Index used when iterating buffer */ int i = 0; + + /** Stores number of bytes read from input pipe in current iteration */ ssize_t count = 0; /* Reading from process1 */ @@ -33,7 +45,9 @@ int main(void) { write_descriptor = open(write_pipe, O_WRONLY); int number_of_characters = 0; - + + fprintf(stderr, "[%s] Init!\n", "process2"); + while(1) { /* Read data from input pipe */ count = read(read_descriptor, buffer, BUFFER_STEP);