from __future__ import generators from twisted.flow import flow from twisted.flow.threads import Threaded def cooperative(): """ simulate a cooperative resource, that doesn't block """ from random import random while 1: val = random() yield flow.Cooperate(val/5) yield str(val)[-5:] def blocking(): """ simulate a blocking database resource """ from time import sleep sleep(1) yield (3,'AL','Alabama') yield (4,'AK','Alaska') yield (6,'AZ','Arizona') yield (7,'AR','Arkansas') yield (8,'CA','California') yield (9,'CO','Colorado') yield (1,'CT','Connecticut') sleep(1) yield (1,'DE','Delaware') yield (2,'DC','District of Columbia') yield (4,'FL','Florida') yield (5,'GA','Georgia') yield (7,'HI','Hawaii') yield (8,'ID','Idaho') yield (9,'IL','Illinois') yield (3,'IN','Indiana') yield (1,'IA','Iowa') yield (2,'KS','Kansas') yield (3,'KY','Kentucky') sleep(1) yield (4,'LA','Louisiana') yield (5,'ME','Maine') yield (7,'MD','Maryland') yield (8,'MA','Massachusetts') yield (9,'MI','Michigan') yield (0,'MN','Minnesota') yield (1,'MS','Mississippi') yield (2,'MO','Missouri') yield (3,'MT','Montana') yield (4,'NE','Nebraska') yield (5,'NV','Nevada') yield (6,'NH','New Hampshire') sleep(1) yield (7,'NJ','New Jersey') yield (8,'NM','New Mexico') yield (9,'NY','New York') yield (0,'NC','North Carolina') yield (1,'ND','North Dakota') yield (3,'OH','Ohio') yield (4,'OK','Oklahoma') yield (5,'OR','Oregon') sleep(1) yield (7,'PA','Pennsylvania') yield (9,'RI','Rhode Island') yield (0,'SC','South Carolina') yield (1,'SD','South Dakota') yield (2,'TN','Tennessee') yield (3,'TX','Texas') yield (4,'UT','Utah') yield (5,'VT','Vermont') yield (7,'VA','Virginia') yield (8,'WA','Washington') yield (9,'WV','West Virginia') yield (3,'WI','Wisconsin') yield (8,'WY','Wyoming') def render(req): req.write("""
State | Zipcodes | |
%s | %s | """ % (abbr, state)) for x in range(cnt): yield zips; if x: req.write(", ") for result in zips.results: req.write(result) zips.results = [] req.write(""" |