Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Расчетно-графическая работа №4.doc
Скачиваний:
8
Добавлен:
02.05.2014
Размер:
138.75 Кб
Скачать

Исходный текст программной реализации

ВИ: Вертикальное исполнение

Первичное решение

defeA323(ccrt,hCycles): //algA323():

thread.start_new(hCycles.Zh, (ccrt.techsys.head4, )) // Fork(Zh2())

thread.start_new(hCycles.Zh, (ccrt.techsys.head9, )) // Fork(Zh1())

hCycles.Zh(ccrt.techsys.head1) // Zh1()

while not ccrt.techsys.head9.yzh: // Join(Zh1()): ожидание (head9.yzh = 1)

pass // пустой оператор тела цикла

while not ccrt.techsys.head4.yzh: // Join(Zh2()): ожидание (head4.yzh = 1)

pass // пустой оператор тела цикла

Модификация:

введение оператора задержки в циклы ожидания завершения параллельной конъюнкции – для разгрузки процессора.

def eA323(ccrt, hCycles): // alg A323():

thread.start_new(hCycles.Zh, (ccrt.techsys.head4, )) // Fork(Zh1())

thread.start_new(hCycles.Zh, (ccrt.techsys.head9, )) // Fork(Zh3())

hCycles.Zh(ccrt.techsys.head7) // Zh7()

while not ccrt.techsys.head9.yzh: // Join(Zh1(): ожидание (head9.yzh = 1)

time.sleep(0.1) // задержка для разгрузки процессора

while not ccrt.techsys.head4.yzh: // Join(Zh2(): ожидание (head4.yzh = 1)

time.sleep(0.1) // задержка для разгрузки процессора