| 782 | }; |
| 783 | |
| 784 | static void DoSubC(TCont* cont, void* argPtr) { |
| 785 | TState& state = *(TState*)argPtr; |
| 786 | state.SubCState = EState::Running; |
| 787 | while (state.SubBState != EState::Running) { |
| 788 | cont->Yield(); |
| 789 | } |
| 790 | while (cont->SleepD(TInstant::Max()) != ECANCELED) { |
| 791 | } |
| 792 | state.SubCState = EState::Finished; |
| 793 | } |
| 794 | |
| 795 | static void DoSubB(TCont* cont, void* argPtr) { |
| 796 | TState& state = *(TState*)argPtr; |