Skip to content

Instantly share code, notes, and snippets.

@sublee
Last active December 16, 2015 02:49
Show Gist options
  • Save sublee/5364876 to your computer and use it in GitHub Desktop.
Save sublee/5364876 to your computer and use it in GitHub Desktop.
>>> worker1 = Worker('Hello, world')
>>> worker2 = Worker('Hello, world')
>>> spawn(worker1.run)
>>> spawn(worker2.run)
>>> remote_obj = customer.reflect([worker1, worker2])
>>> remote_obj
<Remote 'Hello, world'>
>>> remote_obj + '!'
'Hello, world!'
>>> remote_obj.startswith('Hell')
True
>>> znm(remote_obj, fanout=True).startswith('Hell')
[True, True]
>>> znm(remote_obj, fanout=True, as_task=True).startswith('Hell')
[<Task:startswith('Hell') from 'inproc://worker1'>, <Task:startswith('Hell') from 'inproc://worker2'>]
>>> tasks = _
>>> tasks[0]()
True
>>> Tasks[1]()
True
>>> Tasks[1]()
Traceback
...
TaskError: Task already called
>>> znm(remote_obj, wait=False).startwith('Hell')
>>> znm(remote_obj, fanout=True, wait=False).startswith('Hell')
>>> remote_obj[0]
'H'
>>> remote_obj += '!'
Traceback
...
RemoteWritingError: Remote object is read only
>>> worker2.close()
>>> znm(remote_obj, fanout=True).startswith('Hell')
[True]
>>> remote_obj.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment