Patent ID: 6971084

Claim:
A method for creating a computer program to be executed by a plurality of threads, the method comprising: receiving input specifying a first portion of functionality for the computer program; receiving input specifying a second portion of functionality for the computer program; receiving input specifying an enter point for the second portion of functionality; receiving input specifying an exit point for the second portion of functionality; creating executable program instructions in response to the input; associating a plurality of threads with the enter point; the plurality of threads executing the program instructions, wherein said executing comprises: each thread executing until arriving at the enter point for the second portion of functionality and then blocking at the enter point until all other threads associated with the enter point have arrived at the enter point; one or more threads executing the second portion of functionality until arriving at the exit point; each thread that arrives at the exit point blocking at the exit point until all other threads associated with the enter point have arrived at the exit point.