f | import asyncio | f | import asyncio |
| import random | | import random |
| | | |
| class Seq: | | class Seq: |
n | _next_index = 0 | n | instance_num = 0 |
| _events = [] | | events = [] |
| | | |
| def __init__(self, name): | | def __init__(self, name): |
| self.name = name | | self.name = name |
n | self.index = Seq._next_index | n | self.index = Seq.instance_num |
| Seq._next_index += 1 | | Seq.instance_num += 1 |
| Seq._events.append(asyncio.Event()) | | Seq.events.append(asyncio.Event()) |
| if self.index == 0: | | if self.index == 0: |
n | Seq._events[self.index].set() | n | Seq.events[self.index].set() |
| | | |
| async def run(self): | | async def run(self): |
n | await Seq._events[self.index].wait() | n | await Seq.events[self.index].wait() |
| print(self.name) | | print(self.name) |
t | if self.index + 1 < len(Seq._events): | t | if self.index + 1 < len(Seq.events): |
| Seq._events[self.index + 1].set() | | Seq.events[self.index + 1].set() |
| return self.name | | return self.name |