home *** CD-ROM | disk | FTP | other *** search
/ Chip 1995 March / CHIP3.mdf / programm / prog4 / task2.ada < prev    next >
Encoding:
Text File  |  1991-07-01  |  2.7 KB  |  99 lines

  1.                                     -- Chapter 24 - Program 3
  2. with Text_IO; use Text_IO;
  3.  
  4. procedure Task2 is
  5.  
  6.    package Int_IO is new Text_IO.Integer_IO(INTEGER);
  7.    use Int_IO;
  8.  
  9.    task First_Task;
  10.    task body First_Task is
  11.    begin
  12.       for Index in 1..4 loop
  13.          delay 2.0;
  14.          Put("This is in First_Task, pass number ");
  15.          Put(Index,3);
  16.          New_Line;
  17.       end loop;
  18.    end First_Task;
  19.  
  20.    task Second_Task;
  21.    task body Second_Task is
  22.    begin
  23.       for Index in 1..7 loop
  24.          delay 1.0;
  25.          Put("This is in Second_Task, pass number");
  26.          Put(Index,3);
  27.          New_Line;
  28.       end loop;
  29.    end Second_Task;
  30.  
  31.    task Third_Task;
  32.    task body Third_Task is
  33.    begin
  34.       for Index in 1..5 loop
  35.          delay 0.3;
  36.          Put("This is in Third_Task, pass number ");
  37.          Put(Index,3);
  38.          New_Line;
  39.       end loop;
  40.    end Third_Task;
  41.  
  42. begin
  43. -- for Index in 1..5 loop
  44. --    delay 0.7;
  45.       Put_Line("This is in the main program.");
  46. -- end loop;
  47. end Task2;
  48.  
  49.  
  50.  
  51.  
  52. -- Result of Execution (with comments in main program)
  53.  
  54. -- This is in the main program.
  55. -- This is in Third_Task, pass number   1
  56. -- This is in Third_Task, pass number   2
  57. -- This is in Third_Task, pass number   3
  58. -- This is in Second_Task, pass number  1
  59. -- This is in Third_Task, pass number   4
  60. -- This is in Third_Task, pass number   5
  61. -- This is in First Task, pass number   1
  62. -- This is in Second_Task, pass number  2
  63. -- This is in Second_Task, pass number  3
  64. -- This is in First Task, pass number   2
  65. -- This is in Second_Task, pass number  4
  66. -- This is in Second_Task, pass number  5
  67. -- This is in First Task, pass number   3
  68. -- This is in Second_Task, pass number  6
  69. -- This is in Second_Task, pass number  7
  70. -- This is in First Task, pass number   4
  71.  
  72.  
  73.  
  74.  
  75. -- Result of Execution (with main program comments removed)
  76.  
  77. -- This is in Third_Task, pass number   1
  78. -- This is in Third_Task, pass number   2
  79. -- This is in the main program.
  80. -- This is in Third_Task, pass number   3
  81. -- This is in Second_Task, pass number  1
  82. -- This is in Third_Task, pass number   4
  83. -- This is in the main program.
  84. -- This is in Third_Task, pass number   5
  85. -- This is in First Task, pass number   1
  86. -- This is in Second_Task, pass number  2
  87. -- This is in the main program.
  88. -- This is in the main program.
  89. -- This is in Second_Task, pass number  3
  90. -- This is in the main program.
  91. -- This is in First Task, pass number   2
  92. -- This is in Second_Task, pass number  4
  93. -- This is in Second_Task, pass number  5
  94. -- This is in First Task, pass number   3
  95. -- This is in Second_Task, pass number  6
  96. -- This is in Second_Task, pass number  7
  97. -- This is in First Task, pass number   4
  98.  
  99.