We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
0 parents commit 4491e36Copy full SHA for 4491e36
dispatch.py
@@ -0,0 +1,33 @@
1
+# -*- coding: utf-8 -*-
2
+# @Author: lock
3
+# @Date: 2016-05-18 23:47:54
4
+# @Last Modified by: lock
5
+# @Last Modified time: 2016-05-18 23:47:54
6
+from collections import deque
7
+class Runner(object):
8
+ def __init__(self, tasks):
9
+ self.tasks = deque(tasks)
10
+
11
+ def next(self):
12
+ return self.tasks.pop()
13
14
+ def run(self):
15
+ while len(self.tasks):
16
+ task = self.next()
17
+ try:
18
+ next(task)
19
+ except StopIteration:
20
+ pass
21
+ else:
22
+ self.tasks.appendleft(task)
23
24
+def task(name, times):
25
+ for i in range(times):
26
+ yield
27
+ print(name, i)
28
29
+Runner([
30
+ task('hsfzxjy', 5),
31
+ task('Jack', 4),
32
+ task('Bob', 6)
33
+]).run()
0 commit comments