本文整理汇总了Python中work_queue.WorkQueue.submit方法的典型用法代码示例。如果您正苦于以下问题:Python WorkQueue.submit方法的具体用法?Python WorkQueue.submit怎么用?Python WorkQueue.submit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类work_queue.WorkQueue
的用法示例。
在下文中一共展示了WorkQueue.submit方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: QMaster
# 需要导入模块: from work_queue import WorkQueue [as 别名]
# 或者: from work_queue.WorkQueue import submit [as 别名]
#.........这里部分代码省略.........
here
Returns
-------
n : int
The number
"""
return self.wq.stats.tasks_running + self.wq.stats.tasks_waiting
def stop(self):
"""Signal the Qmaster thread to stop"""
self._stop.set()
def wait(self):
"""Block until some sort of action happens in the main-thread loop.
This call will return either when a job as returned from the workers,
or when the queue is empty (last job in the local queue has been sent
out)
Returns
-------
wakeup_cause : str
Either 'job returned' or 'queue empty', depending on the reason
"""
self._mainloop_wake_event.wait()
self._mainloop_wake_event.clear()
cause = self._mainloop_wake_event_cause
if not cause in ['job returned', 'queue empty']:
raise Exception('Bad wakeup cause')
return cause
@with_db_lock
def submit(self, traj):
""" Submit a job to the work-queue for further sampling.
Parameters
----------
"""
if traj.submit_time is not None:
raise ValueError("This traj has already been submitted")
Session.add(traj)
Session.flush()
traj.populate_default_filenames()
if not hasattr(traj, 'init_pdb'):
raise ValueError('Traj is supposed to have a pdb object tacked on')
save_file(traj.init_pdb_fn, traj.init_pdb)
remote_driver_fn = os.path.split(str(traj.forcefield.driver))[1]
remote_pdb_fn = 'input.pdb'
remote_output_fn = 'production_dry{}'.format(traj.forcefield.output_extension)
if traj.mode is None or traj.forcefield is None:
raise ValueError('malformed traj')
task = Task('chmod +x ./{driver}; ./{driver} {pdb_fn} {ff} {water} {mode} {threads}'.format(
pdb_fn=remote_pdb_fn,
mode=traj.mode,
driver=remote_driver_fn,
ff=traj.forcefield.name,
water=traj.forcefield.water,
threads=traj.forcefield.threads))
#why does traj.forcefield.driver come out as unicode?
示例2: Task
# 需要导入模块: from work_queue import WorkQueue [as 别名]
# 或者: from work_queue.WorkQueue import submit [as 别名]
task = Task('cat < %s > %s' % (ifile, ofile))
task.specify_tag(str(time.time()))
print task.command, task.tag
task.specify_algorithm(WORK_QUEUE_SCHEDULE_FILES)
print task.command, task.algorithm
task.specify_buffer('hello from %d' % i, ifile, cache=False)
if i % 2:
task.specify_output_file(ofile, cache=False)
else:
task.specify_file(ofile, type=WORK_QUEUE_OUTPUT, cache=False)
outputs.append(ofile)
wq.submit(task)
if wq.empty():
print 'work queue is empty'
while not wq.empty():
t = wq.wait(10)
if t:
print t.tag
print wq.stats.workers_init, wq.stats.workers_ready, wq.stats.workers_busy, \
wq.stats.tasks_running, wq.stats.tasks_waiting, wq.stats.tasks_complete
map(os.unlink, outputs)
for i in range(5):