1 2 static char help[] = "Tests nested events.\n\n"; 3 4 #include <petscsys.h> 5 6 int main(int argc, char **argv) { 7 int event1, event2, event3; 8 9 PetscFunctionBeginUser; 10 PetscCall(PetscInitialize(&argc, &argv, (char *)0, help)); 11 PetscCall(PetscLogEventRegister("Event2", 0, &event2)); 12 PetscCall(PetscLogEventRegister("Event1", 0, &event1)); 13 PetscCall(PetscLogEventRegister("Event3", 0, &event3)); 14 15 PetscCall(PetscLogEventBegin(event1, 0, 0, 0, 0)); 16 PetscCall(PetscSleep(1.0)); 17 PetscCall(PetscLogEventBegin(event2, 0, 0, 0, 0)); 18 PetscCall(PetscSleep(1.0)); 19 PetscCall(PetscLogEventBegin(event3, 0, 0, 0, 0)); 20 PetscCall(PetscSleep(1.0)); 21 PetscCall(PetscLogEventEnd(event3, 0, 0, 0, 0)); 22 PetscCall(PetscLogEventEnd(event2, 0, 0, 0, 0)); 23 PetscCall(PetscLogEventEnd(event1, 0, 0, 0, 0)); 24 PetscCall(PetscFinalize()); 25 return 0; 26 } 27