

Task

Show the syntax for a complete stoppage of a program inside a   conditional.

This includes all threads/processes which are part of your program.

Explain the cleanup (or lack thereof) caused by the termination (allocated memory, database connections, open files, object finalizers/destructors, run-on-exit hooks, etc.).

Unless otherwise described, no special cleanup outside that provided by the operating system is provided.




 
Module Checkit {
      For i=1 to 200
      Thread {
            k++
            Print "Thread:"; num, "k=";k
      } as M
      Thread M Execute  {
            static num=M, k=1000*i
      }
      Thread M interval 100+900*rnd
      next i
 
      Task.Main 20 {
            if random(10)=1 then Set End
      }
}
Checkit
 