Функция a1wait

Функция a1wait создана специально для данного лабораторного практикума и обеспечивает "занятое" (с использованием центрального процессора) ожидание в течение интервала времени, длительность которого является случайным числом из множества чисел, равномерно распределенных в интервале от 0 до I, где I - параметр функции. Синтаксис:

    void a1wait(int I);

Выполнение функции включает в себя инициализацию датчика случайных чисел, генерацию случайного числа и обращение к функции a0wait для выполнения собственно ожидания.

Текст функции находится в файле ../common/wait.c и может включаться в Вашу программу. Рекомендуется оператор

 #include "../common/wait.h"
включать в начало Вашей программы. Здесь ../common/wait.h означает, что файл wait.h находится на один каталог выше относительно текущего в каталоге common.

Файл wait.c

 #include "wait.h"

/***********************************************/
/* Занятое ожидание с фиксированным интервалом */
/***********************************************/  

/*static*/ int waitFactor; // счетчик циклов ожидания и функции ожидания

void a0wait(int I)
{
        int j;
        double d;
        I*=100;
        for (waitFactor=0; waitFactor<I; waitFactor++)
                for (j=0; j<10000; j++)
                        d=3.1415*j;
}

/*************************************************/
/* занятое ожидание, время которого определяется */
/*   случайным числом в заданном интервал        */
/*************************************************/

void a1wait(int I)
{
        int r;
        srand(time(NULL)); // инициализация генератора случайных чисел
        r=(int)((double)I*rand()/RAND_MAX); // получение случайного числа в интервале 0 - I-1
        a0wait(r); // ожидание
}                 

 


 

© life-prog.ru