Patent ID: 8893092

Claim:
A computer-readable memory whose contents are capable of causing a computing system to perform a method that, for a multithreaded program having a plurality of threads including a first thread in the second thread, explores different relative scheduling of the threads of the program, the method comprising: executing the program a first time from a selected state; discerning a first designated region of the program's code and second designated region of the program's code, the discerning based upon a first set of indications contained in the program's code at the beginning and end of the first region and a second set of indications different from the first set contained in the program's code at the beginning and end of the second region; determining that, during the first execution of the program, the first thread executed the first designated region of the program's code during a first time period and the second thread executed the second designated region of the program's code during a second time period, the first and second time periods not intersecting; and in response to the determining, executing the program a second time from the selected state and causing, in the second execution, the first thread to execute the first region of the program's code during a third time period and the second thread to execute the second region of the program's code during a fourth time, the third and fourth time periods intersecting.