Программирование в стандарте POSIX


Пример 12.20 - часть 2


if (new_line) {

if (write (sds [1], MY_MSG, sizeof (MY_MSG) - 1) != sizeof (MY_MSG) - 1) {

perror ("WRITE TO SOCKET-2");

break;

}

}

if (write (sds [1], buf, 1) != 1) {

perror ("WRITE TO SOCKET-3");

break;

}

new_line = (buf [0] == '\n');

}

shutdown (sds [1], SHUT_WR);

(void) wait (NULL);

/* Опросим данные о времени конца выполнения, */

/* вычислим и выдадим результаты измерений */

if ((en_ct = times (&en_cpt)) == (clock_t) (-1)) {

perror ("TIMES-2");

return (4);

}

tck_p_sec = sysconf (_SC_CLK_TCK);

fprintf (stderr, "Тактов в секунде: %ld\n", tck_p_sec);

fprintf (stderr, "Астрономическое время работы программы: %g сек.\n",

(double) (en_ct - st_ct) / tck_p_sec);

fprintf (stderr, "Процессорное время, затраченное процессом: %g сек.\n",

(double) (en_cpt.tms_utime - st_cpt.tms_utime) / tck_p_sec);

fprintf (stderr, "Процессорное время, затраченное системой: %g сек.\n",

(double) (en_cpt.tms_stime - st_cpt.tms_stime) / tck_p_sec);

fprintf (stderr, "Аналогичные данные для порожденных процессов:\n");

fprintf (stderr, "%g сек.\n%g сек.\n",

(double) (en_cpt.tms_cutime - st_cpt.tms_cutime) / tck_p_sec,

(double) (en_cpt.tms_cstime - st_cpt.tms_cstime) / tck_p_sec);

return (0);

}




Начало  Назад  Вперед