Языки программирования - концепции и принципы

Чтобы не было двойного повтора


          else

                 -- «Обработчик исключения»

          end

     rescue

          if not tried then

              tried := true;                                               -- Чтобы не было двойного повтора

              retry

          end

end;

11.6. Упражнения

 

1. Пакет языка Ada. Исключения в Ada 95 определяют типы и подпрограм­мы для сопоставления информации с исключениями. Сравните эти кон­струкции с конструкциями throw и catch в C++.

2. Покажите, что исключение в языке Ada может быть порождено вне об­ласти действия исключения. (Подсказка: см. гл. 13.) Как можно обработать исключение, объявление которого не находится в области дей­ствия?

3. Покажите, как описание исключений на языке C++: void proc() throw(t1, t2, t3); может быть смоделировано с помощью многократных catch-блоков.

4. Изучите класс EXCEPTION в языке Eiffel и сравните его с обработчиком исключения в языке Ada.

Глава 12

 

Параллелизм

 

 

 

12.1. Что такое параллелизм?

 

Компьютеры с несколькими центральными процессорами (ЦП) могут вы­полнять несколько программ или компонентов одной программы параллель­но. Вычисление, таким образом, может завершиться за меньшее время счета (количество часов), чем на компьютере с одним ЦП, с учетом затрат допол­нительного времени ЦП на синхронизацию и связь. Несколько программ могут также совместно использовать компьютер с одним ЦП, так быстро пе­реключая ЦП с одной программы на другую, что возникает впечатление, буд­то они выполняются одновременно. Несмотря на то, что переключение ЦП не реализует настоящую параллельность, удобно разрабатывать программное обеспечение для этих систем так, как если бы выполнение программ дейст­вительно происходило параллельно. Параллелизм — это термин, используе­мый для обозначения одновременного выполнения нескольких программ без уточнения, является вычисление параллельным на самом деле или только та­ким кажется.


Содержание  Назад  Вперед