Listing 2.
Sample asynchronous algorithm implementation.
1 from eqsql import eq 2 eqsql_db = init_esql(…) 3 futures = [] 4 for s in samples: 5 payload = json.dumps({‘sample’: sample}) 6 ft = eqsql_db.submit_task( 7 ‘exp1’, sim_work_type, payload, 8 priority=0) 9 futures.append(ft) 10 11 tasks_completed = 0 12 while tasks_completed < 1000: 13 ft = eq.pop_completed(futures) 14 tasks_completed += 1 15 tasks, new_priority = update(ft.result()) 16 eq.update_priority(futures, new_priority) 17 for t in tasks: 18 ft = eqsql_db.submit_task( 19 ‘exp1’, sim_work_type, task) 20 futures.append(ft) |